mirror of
				https://gitlab.com/libvirt/libvirt.git
				synced 2025-11-03 08:24:18 +03:00 
			
		
		
		
	Compare commits
	
		
			258 Commits
		
	
	
		
			v10.6.0
			...
			v0.10.2-ma
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					418a165da6 | ||
| 
						 | 
					a397e887ed | ||
| 
						 | 
					0fa54204f2 | ||
| 
						 | 
					16d55b311a | ||
| 
						 | 
					da038007c2 | ||
| 
						 | 
					1f9e9f830e | ||
| 
						 | 
					b1066acb19 | ||
| 
						 | 
					35ed979698 | ||
| 
						 | 
					41a540c78f | ||
| 
						 | 
					f59d02c487 | ||
| 
						 | 
					95836cb26b | ||
| 
						 | 
					7a9bcfa1cc | ||
| 
						 | 
					5f5e9eb23d | ||
| 
						 | 
					e200284078 | ||
| 
						 | 
					dae75860eb | ||
| 
						 | 
					56222e0428 | ||
| 
						 | 
					6cfc7a5d09 | ||
| 
						 | 
					84da8110c1 | ||
| 
						 | 
					7b5ea428c8 | ||
| 
						 | 
					648bd03118 | ||
| 
						 | 
					455de1215c | ||
| 
						 | 
					77d448e15d | ||
| 
						 | 
					cd03624eec | ||
| 
						 | 
					d0b0b052d3 | ||
| 
						 | 
					595969b2da | ||
| 
						 | 
					53b882aad5 | ||
| 
						 | 
					ecad40d8b8 | ||
| 
						 | 
					cf86d7b3a3 | ||
| 
						 | 
					3812acfeef | ||
| 
						 | 
					fbe85fa4fd | ||
| 
						 | 
					0b2750c28e | ||
| 
						 | 
					c061ff5e4a | ||
| 
						 | 
					f8d1fb438f | ||
| 
						 | 
					6829f0e40a | ||
| 
						 | 
					65b0ee31b1 | ||
| 
						 | 
					4e64a086e1 | ||
| 
						 | 
					f468720661 | ||
| 
						 | 
					27b2639f16 | ||
| 
						 | 
					1bee06a4ab | ||
| 
						 | 
					f5009405f5 | ||
| 
						 | 
					9e674d5b48 | ||
| 
						 | 
					f8085a5471 | ||
| 
						 | 
					a93f2757e2 | ||
| 
						 | 
					7c4b6833bb | ||
| 
						 | 
					0305c271fc | ||
| 
						 | 
					364bbdc4cc | ||
| 
						 | 
					69838772cc | ||
| 
						 | 
					742dd7b75f | ||
| 
						 | 
					05bfbdba00 | ||
| 
						 | 
					39dcf00e72 | ||
| 
						 | 
					69ef9b78c8 | ||
| 
						 | 
					bf95285541 | ||
| 
						 | 
					4f9e72c38f | ||
| 
						 | 
					3b7180f1d4 | ||
| 
						 | 
					0f2eda0da9 | ||
| 
						 | 
					fd00ec8f92 | ||
| 
						 | 
					11f56fc7a8 | ||
| 
						 | 
					8ac4f9ce74 | ||
| 
						 | 
					0b0ecdfc6d | ||
| 
						 | 
					610aadd635 | ||
| 
						 | 
					8e72362ec8 | ||
| 
						 | 
					f50a9b3be1 | ||
| 
						 | 
					6f290666dc | ||
| 
						 | 
					afb32d4a2b | ||
| 
						 | 
					d4e0e86c49 | ||
| 
						 | 
					2bcf1522ff | ||
| 
						 | 
					2c7638fdb4 | ||
| 
						 | 
					879f28a9f3 | ||
| 
						 | 
					119c079c5b | ||
| 
						 | 
					e91f69ed89 | ||
| 
						 | 
					96a49bd8bb | ||
| 
						 | 
					50a1a57e4c | ||
| 
						 | 
					95ea6a38bd | ||
| 
						 | 
					8a57d799ca | ||
| 
						 | 
					741f004378 | ||
| 
						 | 
					66fa059e1a | ||
| 
						 | 
					b03cf6d6bc | ||
| 
						 | 
					f63b9694dc | ||
| 
						 | 
					460e481647 | ||
| 
						 | 
					8cdeb0f85e | ||
| 
						 | 
					f104a2a6b3 | ||
| 
						 | 
					c52667e241 | ||
| 
						 | 
					ba4e7b6344 | ||
| 
						 | 
					5e10d0ef1e | ||
| 
						 | 
					2d6eaba201 | ||
| 
						 | 
					a054aa94e8 | ||
| 
						 | 
					5c31525082 | ||
| 
						 | 
					48baba6a02 | ||
| 
						 | 
					61511ae63a | ||
| 
						 | 
					6b789ea3e0 | ||
| 
						 | 
					52fca883d2 | ||
| 
						 | 
					f8ac83ec2e | ||
| 
						 | 
					9330984eef | ||
| 
						 | 
					1a32232e57 | ||
| 
						 | 
					b8279deda7 | ||
| 
						 | 
					2b47328d44 | ||
| 
						 | 
					536c0e3e4f | ||
| 
						 | 
					891ca055f4 | ||
| 
						 | 
					ecb70714a7 | ||
| 
						 | 
					ab4b82c329 | ||
| 
						 | 
					05dd67417f | ||
| 
						 | 
					d39ef5a01f | ||
| 
						 | 
					84cbd3a98a | ||
| 
						 | 
					475b00440b | ||
| 
						 | 
					88e3b40e76 | ||
| 
						 | 
					0617864e2c | ||
| 
						 | 
					9b625cbcf0 | ||
| 
						 | 
					9774343564 | ||
| 
						 | 
					9034c9286e | ||
| 
						 | 
					6187407154 | ||
| 
						 | 
					8b60ff7f10 | ||
| 
						 | 
					68fb799b46 | ||
| 
						 | 
					8a0bb98d1e | ||
| 
						 | 
					34d3627abc | ||
| 
						 | 
					0e78179d0e | ||
| 
						 | 
					9720cc8195 | ||
| 
						 | 
					2f4d266d1f | ||
| 
						 | 
					e8d28ec3fa | ||
| 
						 | 
					caf1377a12 | ||
| 
						 | 
					a565e20b08 | ||
| 
						 | 
					e4e5a4d349 | ||
| 
						 | 
					2e7298d718 | ||
| 
						 | 
					3926d8571b | ||
| 
						 | 
					e69aaf2f7e | ||
| 
						 | 
					dd35c8dadd | ||
| 
						 | 
					f928284b85 | ||
| 
						 | 
					74aa3ffec2 | ||
| 
						 | 
					49ed3cd1f6 | ||
| 
						 | 
					1083e4183f | ||
| 
						 | 
					7e3b1283f1 | ||
| 
						 | 
					bf8efc3398 | ||
| 
						 | 
					fac1a19dfc | ||
| 
						 | 
					89cecbbecc | ||
| 
						 | 
					1f45a3233c | ||
| 
						 | 
					9d239b5956 | ||
| 
						 | 
					f45dded083 | ||
| 
						 | 
					179216680e | ||
| 
						 | 
					adc0bc4c1d | ||
| 
						 | 
					8b6567005c | ||
| 
						 | 
					2484fb2ef7 | ||
| 
						 | 
					b300c71fbf | ||
| 
						 | 
					ddf4a85db8 | ||
| 
						 | 
					ec48fd7d93 | ||
| 
						 | 
					c18efc8e6e | ||
| 
						 | 
					74aaec03eb | ||
| 
						 | 
					caea712245 | ||
| 
						 | 
					3186eb057c | ||
| 
						 | 
					d070eee1b2 | ||
| 
						 | 
					245c8135fe | ||
| 
						 | 
					e1cb1c06ec | ||
| 
						 | 
					a2e51ac038 | ||
| 
						 | 
					77b780f581 | ||
| 
						 | 
					b222c47b53 | ||
| 
						 | 
					beb086f638 | ||
| 
						 | 
					d3fd617699 | ||
| 
						 | 
					b16a4ca98b | ||
| 
						 | 
					2d49ed5d18 | ||
| 
						 | 
					43995ddcc4 | ||
| 
						 | 
					9a5430414d | ||
| 
						 | 
					d676b742ca | ||
| 
						 | 
					8a95078f98 | ||
| 
						 | 
					ec3f5cad8e | ||
| 
						 | 
					c3cc4c1835 | ||
| 
						 | 
					0004a11879 | ||
| 
						 | 
					58320848d2 | ||
| 
						 | 
					d819936146 | ||
| 
						 | 
					3f3d0944a1 | ||
| 
						 | 
					b29534a6ed | ||
| 
						 | 
					48aaabd99d | ||
| 
						 | 
					3fbab08a52 | ||
| 
						 | 
					337efad95e | ||
| 
						 | 
					c1bbfabd04 | ||
| 
						 | 
					d7751c34b8 | ||
| 
						 | 
					165518d508 | ||
| 
						 | 
					ab02e39f59 | ||
| 
						 | 
					e549450714 | ||
| 
						 | 
					759c7195f0 | ||
| 
						 | 
					3feed5c100 | ||
| 
						 | 
					d564e0a81c | ||
| 
						 | 
					93ac917c95 | ||
| 
						 | 
					9a9527d21f | ||
| 
						 | 
					e9f16f2542 | ||
| 
						 | 
					addce0a74a | ||
| 
						 | 
					9f85b713fa | ||
| 
						 | 
					ff5a1ea09a | ||
| 
						 | 
					03bf498f2c | ||
| 
						 | 
					bd098c1143 | ||
| 
						 | 
					cbee5d8b90 | ||
| 
						 | 
					aa9f65c869 | ||
| 
						 | 
					acb169d0a1 | ||
| 
						 | 
					965e4c3c24 | ||
| 
						 | 
					3d12463644 | ||
| 
						 | 
					6bae2c413d | ||
| 
						 | 
					a5f8a78f90 | ||
| 
						 | 
					10f8762b4f | ||
| 
						 | 
					874a336108 | ||
| 
						 | 
					f1de8d3beb | ||
| 
						 | 
					11b13b3619 | ||
| 
						 | 
					64a9993c17 | ||
| 
						 | 
					cefa64cafd | ||
| 
						 | 
					ec08a738e8 | ||
| 
						 | 
					4c2a38d1ed | ||
| 
						 | 
					2716c78c3f | ||
| 
						 | 
					e620a97a94 | ||
| 
						 | 
					0dd956b9c3 | ||
| 
						 | 
					39db0d2dce | ||
| 
						 | 
					f5650a37f7 | ||
| 
						 | 
					77cecd2bc3 | ||
| 
						 | 
					29a2a91187 | ||
| 
						 | 
					95440c51a0 | ||
| 
						 | 
					ad5afcd14c | ||
| 
						 | 
					3709804d8a | ||
| 
						 | 
					1fd7c2617e | ||
| 
						 | 
					95110e715d | ||
| 
						 | 
					71460b50b7 | ||
| 
						 | 
					81a7baf163 | ||
| 
						 | 
					220d25cd02 | ||
| 
						 | 
					d2c0f2e3b9 | ||
| 
						 | 
					47489d64c6 | ||
| 
						 | 
					88c7f28b5f | ||
| 
						 | 
					9e423dd375 | ||
| 
						 | 
					1bc28c283b | ||
| 
						 | 
					6730e6352f | ||
| 
						 | 
					6d4bca5b1f | ||
| 
						 | 
					cf2d85cdf5 | ||
| 
						 | 
					e302d32f0f | ||
| 
						 | 
					ccc7671135 | ||
| 
						 | 
					5c18805704 | ||
| 
						 | 
					0cfd7b9afe | ||
| 
						 | 
					72ad93f00d | ||
| 
						 | 
					2a85eaee82 | ||
| 
						 | 
					beb9dd9cd9 | ||
| 
						 | 
					ad9d186370 | ||
| 
						 | 
					9875efbdc3 | ||
| 
						 | 
					440c15444a | ||
| 
						 | 
					eed4cb360b | ||
| 
						 | 
					b635baf666 | ||
| 
						 | 
					14cf67e6fb | ||
| 
						 | 
					e37286dadf | ||
| 
						 | 
					650a37faa5 | ||
| 
						 | 
					7e3dab4b9d | ||
| 
						 | 
					fdfb18690d | ||
| 
						 | 
					e81632740f | ||
| 
						 | 
					3c860c40e3 | ||
| 
						 | 
					a8ad93965f | ||
| 
						 | 
					f4e3a2afa5 | ||
| 
						 | 
					c9791620a0 | ||
| 
						 | 
					df2b4be5cb | ||
| 
						 | 
					a05d4ca932 | ||
| 
						 | 
					a5cf2ef4a7 | ||
| 
						 | 
					5292eed6e2 | ||
| 
						 | 
					88589de79c | ||
| 
						 | 
					035d998f01 | ||
| 
						 | 
					6b2a4e2514 | ||
| 
						 | 
					b53782f102 | ||
| 
						 | 
					f35c18c783 | ||
| 
						 | 
					eeaa15b6ea | ||
| 
						 | 
					94090184c2 | 
							
								
								
									
										6
									
								
								.ctags
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								.ctags
									
									
									
									
									
								
							@@ -1,6 +0,0 @@
 | 
			
		||||
--recurse
 | 
			
		||||
--exclude=*.orig
 | 
			
		||||
--exclude=*.html
 | 
			
		||||
--exclude=*.html.in
 | 
			
		||||
--langmap=c:+.h.in
 | 
			
		||||
--c-kinds=+p
 | 
			
		||||
@@ -1 +0,0 @@
 | 
			
		||||
../.ctags
 | 
			
		||||
@@ -1,21 +0,0 @@
 | 
			
		||||
# EditorConfig is a file format and collection of text editor plugins
 | 
			
		||||
# for maintaining consistent coding styles between different editors
 | 
			
		||||
# and IDEs. Most popular editors support this either natively or via
 | 
			
		||||
# plugin.
 | 
			
		||||
#
 | 
			
		||||
# Check https://editorconfig.org for details.
 | 
			
		||||
 | 
			
		||||
root = true
 | 
			
		||||
 | 
			
		||||
[*]
 | 
			
		||||
end_of_line = lf
 | 
			
		||||
insert_final_newline = true
 | 
			
		||||
charset = utf-8
 | 
			
		||||
 | 
			
		||||
[*.c]
 | 
			
		||||
indent_style = space
 | 
			
		||||
indent_size = 4
 | 
			
		||||
 | 
			
		||||
[*.{rng,xml}]
 | 
			
		||||
indent_style = space
 | 
			
		||||
indent_size = 2
 | 
			
		||||
							
								
								
									
										22
									
								
								.gitattributes
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								.gitattributes
									
									
									
									
										vendored
									
									
								
							@@ -1,22 +0,0 @@
 | 
			
		||||
# Generic git stuff
 | 
			
		||||
**/.gitattributes export-ignore
 | 
			
		||||
**/.gitignore export-ignore
 | 
			
		||||
/.gitmodules export-ignore
 | 
			
		||||
/.mailmap export-ignore
 | 
			
		||||
 | 
			
		||||
# Project-specific git stuff
 | 
			
		||||
/.gitpublish export-ignore
 | 
			
		||||
/docs/gitdm export-ignore
 | 
			
		||||
/docs/gitdm/** export-ignore
 | 
			
		||||
/gitdm.config export-ignore
 | 
			
		||||
 | 
			
		||||
# Code hosting stuff
 | 
			
		||||
/.github export-ignore
 | 
			
		||||
/.github/** export-ignore
 | 
			
		||||
/.gitlab export-ignore
 | 
			
		||||
/.gitlab/** export-ignore
 | 
			
		||||
 | 
			
		||||
# CI stuff
 | 
			
		||||
/.gitlab-ci.yml export-ignore
 | 
			
		||||
/ci export-ignore
 | 
			
		||||
/ci/** export-ignore
 | 
			
		||||
							
								
								
									
										49
									
								
								.github/workflows/lockdown.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										49
									
								
								.github/workflows/lockdown.yml
									
									
									
									
										vendored
									
									
								
							@@ -1,49 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
# Configuration for Repo Lockdown - https://github.com/dessant/repo-lockdown
 | 
			
		||||
 | 
			
		||||
name: 'Repo Lockdown'
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  issues:
 | 
			
		||||
    types: opened
 | 
			
		||||
  pull_request_target:
 | 
			
		||||
    types: opened
 | 
			
		||||
 | 
			
		||||
permissions:
 | 
			
		||||
  pull-requests: write
 | 
			
		||||
  issues: write
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  action:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: dessant/repo-lockdown@v2
 | 
			
		||||
        with:
 | 
			
		||||
          issue-comment: |
 | 
			
		||||
            Thank you for your interest in the libvirt project.
 | 
			
		||||
 | 
			
		||||
            Since this repository is a read-only mirror of the project's master
 | 
			
		||||
            repository hosted on GitLab, issues opened here are not processed.
 | 
			
		||||
 | 
			
		||||
            We kindly request that new issues are reported to
 | 
			
		||||
 | 
			
		||||
              https://gitlab.com/libvirt/libvirt/-/issues/new
 | 
			
		||||
 | 
			
		||||
            Thank you for your time and understanding.
 | 
			
		||||
          lock-issue: true
 | 
			
		||||
          close-issue: true
 | 
			
		||||
          pr-comment: |
 | 
			
		||||
            Thank you for your interest in the libvirt project.
 | 
			
		||||
 | 
			
		||||
            Since this repository is a read-only mirror of the project's master
 | 
			
		||||
            repository hosted on GitLab, merge requests opened here are not
 | 
			
		||||
            processed.
 | 
			
		||||
 | 
			
		||||
            For main libvirt.git repository all patch review and discussion
 | 
			
		||||
            only occurs on the devel mailing list.
 | 
			
		||||
 | 
			
		||||
              https://libvirt.org/submitting-patches.html
 | 
			
		||||
 | 
			
		||||
            Thank you for your time and understanding.
 | 
			
		||||
          lock-pr: true
 | 
			
		||||
          close-pr: true
 | 
			
		||||
							
								
								
									
										216
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										216
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -1,26 +1,200 @@
 | 
			
		||||
# vim related ignores
 | 
			
		||||
*.swp
 | 
			
		||||
.lvimrc
 | 
			
		||||
 | 
			
		||||
# emacs related ignores
 | 
			
		||||
*#*#
 | 
			
		||||
*.#*#
 | 
			
		||||
.#*
 | 
			
		||||
*~
 | 
			
		||||
 | 
			
		||||
# git related ignores
 | 
			
		||||
*.rej
 | 
			
		||||
*.a
 | 
			
		||||
*.cov
 | 
			
		||||
*.exe
 | 
			
		||||
*.gcda
 | 
			
		||||
*.gcno
 | 
			
		||||
*.gcov
 | 
			
		||||
*.html
 | 
			
		||||
*.i
 | 
			
		||||
*.la
 | 
			
		||||
*.lo
 | 
			
		||||
*.loT
 | 
			
		||||
*.o
 | 
			
		||||
*.orig
 | 
			
		||||
*.pyc
 | 
			
		||||
*.rej
 | 
			
		||||
*.s
 | 
			
		||||
*~
 | 
			
		||||
.deps
 | 
			
		||||
.gdb_history
 | 
			
		||||
.git
 | 
			
		||||
.git-module-status
 | 
			
		||||
 | 
			
		||||
# python related ignores
 | 
			
		||||
__pycache__/
 | 
			
		||||
 | 
			
		||||
# libvirt related ignores
 | 
			
		||||
.libs
 | 
			
		||||
.lvimrc
 | 
			
		||||
.memdump
 | 
			
		||||
.sc-start-sc_*
 | 
			
		||||
/ABOUT-NLS
 | 
			
		||||
/AUTHORS
 | 
			
		||||
/COPYING
 | 
			
		||||
/ChangeLog
 | 
			
		||||
/GNUmakefile
 | 
			
		||||
/INSTALL
 | 
			
		||||
/NEWS
 | 
			
		||||
/aclocal.m4
 | 
			
		||||
/autom4te.cache
 | 
			
		||||
/build-aux
 | 
			
		||||
/build-aux/
 | 
			
		||||
/build/
 | 
			
		||||
/ci/scratch/
 | 
			
		||||
tags
 | 
			
		||||
 | 
			
		||||
# clangd related ignores
 | 
			
		||||
.clangd
 | 
			
		||||
compile_commands.json
 | 
			
		||||
/config.cache
 | 
			
		||||
/config.guess
 | 
			
		||||
/config.h
 | 
			
		||||
/config.h.in
 | 
			
		||||
/config.log
 | 
			
		||||
/config.rpath
 | 
			
		||||
/config.status
 | 
			
		||||
/config.sub
 | 
			
		||||
/configure
 | 
			
		||||
/configure.lineno
 | 
			
		||||
/daemon/*_dispatch.h
 | 
			
		||||
/daemon/libvirt_qemud
 | 
			
		||||
/daemon/libvirtd
 | 
			
		||||
/daemon/libvirtd*.logrotate
 | 
			
		||||
/daemon/libvirtd.8
 | 
			
		||||
/daemon/libvirtd.8.in
 | 
			
		||||
/daemon/libvirtd.init
 | 
			
		||||
/daemon/libvirtd.pod
 | 
			
		||||
/daemon/libvirtd.service
 | 
			
		||||
/daemon/test_libvirtd.aug
 | 
			
		||||
/docs/apibuild.py.stamp
 | 
			
		||||
/docs/devhelp/libvirt.devhelp
 | 
			
		||||
/docs/hvsupport.html.in
 | 
			
		||||
/docs/libvirt-api.xml
 | 
			
		||||
/docs/libvirt-qemu-*.xml
 | 
			
		||||
/docs/libvirt-refs.xml
 | 
			
		||||
/docs/search.php
 | 
			
		||||
/docs/todo.html.in
 | 
			
		||||
/examples/domain-events/events-c/event-test
 | 
			
		||||
/examples/dominfo/info1
 | 
			
		||||
/examples/domsuspend/suspend
 | 
			
		||||
/examples/hellolibvirt/hellolibvirt
 | 
			
		||||
/examples/openauth/openauth
 | 
			
		||||
/gnulib/lib/*
 | 
			
		||||
/gnulib/m4/*
 | 
			
		||||
/gnulib/tests/*
 | 
			
		||||
/include/libvirt/libvirt.h
 | 
			
		||||
/libtool
 | 
			
		||||
/libvirt-*.tar.gz
 | 
			
		||||
/libvirt-[0-9]*
 | 
			
		||||
/libvirt.pc
 | 
			
		||||
/libvirt.spec
 | 
			
		||||
/ltconfig
 | 
			
		||||
/ltmain.sh
 | 
			
		||||
/m4/*
 | 
			
		||||
/maint.mk
 | 
			
		||||
/mingw-libvirt.spec
 | 
			
		||||
/mkinstalldirs
 | 
			
		||||
/po/*
 | 
			
		||||
/proxy/
 | 
			
		||||
/python/generated.stamp
 | 
			
		||||
/python/generator.py.stamp
 | 
			
		||||
/python/libvirt-export.c
 | 
			
		||||
/python/libvirt-qemu-export.c
 | 
			
		||||
/python/libvirt-qemu.[ch]
 | 
			
		||||
/python/libvirt.[ch]
 | 
			
		||||
/python/libvirt.py
 | 
			
		||||
/python/libvirt_qemu.py
 | 
			
		||||
/run
 | 
			
		||||
/sc_*
 | 
			
		||||
/src/.*.stamp
 | 
			
		||||
/src/esx/*.generated.*
 | 
			
		||||
/src/hyperv/*.generated.*
 | 
			
		||||
/src/libvirt*.def
 | 
			
		||||
/src/libvirt.syms
 | 
			
		||||
/src/libvirt_*.stp
 | 
			
		||||
/src/libvirt_*helper
 | 
			
		||||
/src/libvirt_*probes.h
 | 
			
		||||
/src/libvirt_lxc
 | 
			
		||||
/src/locking/qemu-sanlock.conf
 | 
			
		||||
/src/locking/test_libvirt_sanlock.aug
 | 
			
		||||
/src/lxc/lxc_controller_dispatch.h
 | 
			
		||||
/src/lxc/lxc_monitor_dispatch.h
 | 
			
		||||
/src/lxc/lxc_protocol.c
 | 
			
		||||
/src/lxc/lxc_protocol.h
 | 
			
		||||
/src/lxc/test_libvirtd_lxc.aug
 | 
			
		||||
/src/qemu/test_libvirtd_qemu.aug
 | 
			
		||||
/src/remote/*_client_bodies.h
 | 
			
		||||
/src/remote/*_protocol.[ch]
 | 
			
		||||
/src/rpc/virkeepaliveprotocol.[ch]
 | 
			
		||||
/src/rpc/virnetprotocol.[ch]
 | 
			
		||||
/src/test_libvirt*.aug
 | 
			
		||||
/src/util/virkeymaps.h
 | 
			
		||||
/src/virt-aa-helper
 | 
			
		||||
/tests/*.log
 | 
			
		||||
/tests/*.pid
 | 
			
		||||
/tests/*xml2*test
 | 
			
		||||
/tests/commandhelper
 | 
			
		||||
/tests/commandtest
 | 
			
		||||
/tests/conftest
 | 
			
		||||
/tests/cputest
 | 
			
		||||
/tests/domainsnapshotxml2xmltest
 | 
			
		||||
/tests/esxutilstest
 | 
			
		||||
/tests/eventtest
 | 
			
		||||
/tests/hashtest
 | 
			
		||||
/tests/jsontest
 | 
			
		||||
/tests/libvirtdconftest
 | 
			
		||||
/tests/networkxml2argvtest
 | 
			
		||||
/tests/nodeinfotest
 | 
			
		||||
/tests/nwfilterxml2xmltest
 | 
			
		||||
/tests/object-locking
 | 
			
		||||
/tests/object-locking-files.txt
 | 
			
		||||
/tests/object-locking.cm[ix]
 | 
			
		||||
/tests/openvzutilstest
 | 
			
		||||
/tests/qemuargv2xmltest
 | 
			
		||||
/tests/qemuhelptest
 | 
			
		||||
/tests/qemumonitorjsontest
 | 
			
		||||
/tests/qemumonitortest
 | 
			
		||||
/tests/qemuxmlnstest
 | 
			
		||||
/tests/qparamtest
 | 
			
		||||
/tests/reconnect
 | 
			
		||||
/tests/secaatest
 | 
			
		||||
/tests/seclabeltest
 | 
			
		||||
/tests/securityselinuxtest
 | 
			
		||||
/tests/sexpr2xmltest
 | 
			
		||||
/tests/shunloadtest
 | 
			
		||||
/tests/sockettest
 | 
			
		||||
/tests/ssh
 | 
			
		||||
/tests/statstest
 | 
			
		||||
/tests/storagebackendsheepdogtest
 | 
			
		||||
/tests/utiltest
 | 
			
		||||
/tests/viratomictest
 | 
			
		||||
/tests/virauthconfigtest
 | 
			
		||||
/tests/virbitmaptest
 | 
			
		||||
/tests/virbuftest
 | 
			
		||||
/tests/virdrivermoduletest
 | 
			
		||||
/tests/virhashtest
 | 
			
		||||
/tests/virkeyfiletest
 | 
			
		||||
/tests/virnet*test
 | 
			
		||||
/tests/virshtest
 | 
			
		||||
/tests/virstringtest
 | 
			
		||||
/tests/virtimetest
 | 
			
		||||
/tests/viruritest
 | 
			
		||||
/tests/vmx2xmltest
 | 
			
		||||
/tests/xencapstest
 | 
			
		||||
/tests/xmconfigtest
 | 
			
		||||
/tools/*.[18]
 | 
			
		||||
/tools/libvirt-guests.init
 | 
			
		||||
/tools/libvirt-guests.service
 | 
			
		||||
/tools/libvirt-guests.sh
 | 
			
		||||
/tools/virsh
 | 
			
		||||
/tools/virsh-*-edit.c
 | 
			
		||||
/tools/virt-*-validate
 | 
			
		||||
/tools/virt-sanlock-cleanup
 | 
			
		||||
/update.log
 | 
			
		||||
Makefile
 | 
			
		||||
Makefile.in
 | 
			
		||||
TAGS
 | 
			
		||||
coverage
 | 
			
		||||
cscope.files
 | 
			
		||||
cscope.out
 | 
			
		||||
results.log
 | 
			
		||||
stamp-h
 | 
			
		||||
stamp-h.in
 | 
			
		||||
stamp-h1
 | 
			
		||||
!/gnulib/lib/Makefile.am
 | 
			
		||||
!/gnulib/tests/Makefile.am
 | 
			
		||||
!/m4/virt-*.m4
 | 
			
		||||
!/po/*.po
 | 
			
		||||
!/po/POTFILES.in
 | 
			
		||||
!/po/libvirt.pot
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										176
									
								
								.gitlab-ci.yml
									
									
									
									
									
								
							
							
						
						
									
										176
									
								
								.gitlab-ci.yml
									
									
									
									
									
								
							@@ -1,176 +0,0 @@
 | 
			
		||||
variables:
 | 
			
		||||
  GIT_DEPTH: 100
 | 
			
		||||
 | 
			
		||||
stages:
 | 
			
		||||
  - containers
 | 
			
		||||
  - builds
 | 
			
		||||
  - integration_tests
 | 
			
		||||
  - sanity_checks
 | 
			
		||||
  - pages
 | 
			
		||||
 | 
			
		||||
.script_variables: &script_variables |
 | 
			
		||||
  export CCACHE_BASEDIR="$(pwd)"
 | 
			
		||||
  export CCACHE_DIR="$CCACHE_BASEDIR/ccache"
 | 
			
		||||
  export CCACHE_MAXSIZE="500M"
 | 
			
		||||
  export PATH="$CCACHE_WRAPPERSDIR:$PATH"
 | 
			
		||||
  export VIR_TEST_VERBOSE="1"
 | 
			
		||||
  export VIR_TEST_DEBUG="1"
 | 
			
		||||
 | 
			
		||||
include:
 | 
			
		||||
  - '/ci/gitlab.yml'
 | 
			
		||||
  - '/ci/integration.yml'
 | 
			
		||||
 | 
			
		||||
.native_build_job:
 | 
			
		||||
  extends: .gitlab_native_build_job
 | 
			
		||||
  cache:
 | 
			
		||||
    paths:
 | 
			
		||||
      - ccache/
 | 
			
		||||
    key: "$CI_JOB_NAME"
 | 
			
		||||
  script:
 | 
			
		||||
    - source ci/jobs.sh
 | 
			
		||||
    - if test -x /usr/bin/rpmbuild && test "$RPM" != "skip";
 | 
			
		||||
      then
 | 
			
		||||
        run_rpmbuild;
 | 
			
		||||
      else
 | 
			
		||||
        run_build;
 | 
			
		||||
        run_test;
 | 
			
		||||
      fi
 | 
			
		||||
  after_script:
 | 
			
		||||
    - test "$CI_JOB_STATUS" != "success" && exit 1;
 | 
			
		||||
    - if test -x /usr/bin/rpmbuild && test "$RPM" != "skip";
 | 
			
		||||
      then
 | 
			
		||||
        mv "$HOME"/rpmbuild/RPMS/x86_64/ libvirt-rpms/;
 | 
			
		||||
      fi
 | 
			
		||||
 | 
			
		||||
.cross_build_job:
 | 
			
		||||
  extends: .gitlab_cross_build_job
 | 
			
		||||
  cache:
 | 
			
		||||
    paths:
 | 
			
		||||
      - ccache/
 | 
			
		||||
    key: "$CI_JOB_NAME"
 | 
			
		||||
  script:
 | 
			
		||||
    - source ci/jobs.sh
 | 
			
		||||
    - if test -x /usr/bin/rpmbuild && test "$RPM" != "skip";
 | 
			
		||||
      then
 | 
			
		||||
        run_rpmbuild;
 | 
			
		||||
      else
 | 
			
		||||
        run_build;
 | 
			
		||||
        if test "$CROSS" = "i686";
 | 
			
		||||
        then
 | 
			
		||||
          run_test;
 | 
			
		||||
        fi;
 | 
			
		||||
      fi
 | 
			
		||||
 | 
			
		||||
# This artifact published by this job is downloaded by libvirt.org to
 | 
			
		||||
# be deployed to the web root:
 | 
			
		||||
#    https://gitlab.com/libvirt/libvirt/-/jobs/artifacts/master/download?job=website
 | 
			
		||||
website_job:
 | 
			
		||||
  extends: .gitlab_native_build_job
 | 
			
		||||
  needs:
 | 
			
		||||
    - job: x86_64-almalinux-9-container
 | 
			
		||||
      optional: true
 | 
			
		||||
  script:
 | 
			
		||||
    - source ci/jobs.sh
 | 
			
		||||
    - run_website_build
 | 
			
		||||
  after_script:
 | 
			
		||||
    - test "$CI_JOB_STATUS" != "success" && exit 1;
 | 
			
		||||
    - mv install/usr/share/doc/libvirt/html/ website
 | 
			
		||||
  artifacts:
 | 
			
		||||
    expose_as: 'Website'
 | 
			
		||||
    name: 'website'
 | 
			
		||||
    when: on_success
 | 
			
		||||
    expire_in: 30 days
 | 
			
		||||
    paths:
 | 
			
		||||
      - website
 | 
			
		||||
  variables:
 | 
			
		||||
    NAME: almalinux-9
 | 
			
		||||
    TARGET_BASE_IMAGE: docker.io/library/almalinux:9
 | 
			
		||||
 | 
			
		||||
# On push to master publish the website from 'website_job' via gitlab pages
 | 
			
		||||
pages:
 | 
			
		||||
  stage: pages
 | 
			
		||||
  script:
 | 
			
		||||
    - mv website public
 | 
			
		||||
    - cp .gitlab_pages_redirects public/_redirects
 | 
			
		||||
  dependencies:
 | 
			
		||||
    - website_job
 | 
			
		||||
  rules:
 | 
			
		||||
    - if: '$CI_PROJECT_NAMESPACE == $RUN_UPSTREAM_NAMESPACE && $CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
 | 
			
		||||
      when: always
 | 
			
		||||
    - when: never
 | 
			
		||||
  artifacts:
 | 
			
		||||
    expose_as: 'pages'
 | 
			
		||||
    name: 'pages'
 | 
			
		||||
    paths:
 | 
			
		||||
      - public
 | 
			
		||||
 | 
			
		||||
codestyle_job:
 | 
			
		||||
  stage: sanity_checks
 | 
			
		||||
  extends: .gitlab_native_build_job
 | 
			
		||||
  needs:
 | 
			
		||||
    - job: x86_64-opensuse-leap-15-container
 | 
			
		||||
      optional: true
 | 
			
		||||
  script:
 | 
			
		||||
    - source ci/jobs.sh
 | 
			
		||||
    - run_codestyle
 | 
			
		||||
  variables:
 | 
			
		||||
    NAME: opensuse-leap-15
 | 
			
		||||
    TARGET_BASE_IMAGE: registry.opensuse.org/opensuse/leap:15.5
 | 
			
		||||
 | 
			
		||||
# This artifact published by this job is downloaded to push to Weblate
 | 
			
		||||
# for translation usage:
 | 
			
		||||
#    https://gitlab.com/libvirt/libvirt/-/jobs/artifacts/master/download?job=potfile
 | 
			
		||||
potfile:
 | 
			
		||||
  image: $CI_REGISTRY/$RUN_UPSTREAM_NAMESPACE/libvirt/ci-$NAME:latest
 | 
			
		||||
  stage: builds
 | 
			
		||||
  variables:
 | 
			
		||||
    NAME: almalinux-9
 | 
			
		||||
  before_script:
 | 
			
		||||
    - cat /packages.txt
 | 
			
		||||
  needs:
 | 
			
		||||
    - job: x86_64-almalinux-9-container
 | 
			
		||||
      optional: true
 | 
			
		||||
  rules:
 | 
			
		||||
    - if: '$CI_PROJECT_NAMESPACE == $RUN_UPSTREAM_NAMESPACE && $CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
 | 
			
		||||
      when: on_success
 | 
			
		||||
    - when: never
 | 
			
		||||
  before_script:
 | 
			
		||||
    - *script_variables
 | 
			
		||||
  script:
 | 
			
		||||
    - source ci/jobs.sh
 | 
			
		||||
    - run_potfile
 | 
			
		||||
  after_script:
 | 
			
		||||
    - test "$CI_JOB_STATUS" != "success" && exit 1;
 | 
			
		||||
    - cp po/libvirt.pot libvirt.pot
 | 
			
		||||
  artifacts:
 | 
			
		||||
    expose_as: 'Potfile'
 | 
			
		||||
    name: 'potfile'
 | 
			
		||||
    when: on_success
 | 
			
		||||
    expire_in: 30 days
 | 
			
		||||
    paths:
 | 
			
		||||
      - libvirt.pot
 | 
			
		||||
 | 
			
		||||
# Coverity job that is run only by schedules
 | 
			
		||||
coverity:
 | 
			
		||||
  image: $CI_REGISTRY/$RUN_UPSTREAM_NAMESPACE/libvirt/ci-$NAME:latest
 | 
			
		||||
  stage: builds
 | 
			
		||||
  needs:
 | 
			
		||||
    - job: x86_64-almalinux-9-container
 | 
			
		||||
      optional: true
 | 
			
		||||
  before_script:
 | 
			
		||||
    - cat /packages.txt
 | 
			
		||||
  script:
 | 
			
		||||
    - curl https://scan.coverity.com/download/cxx/linux64 --form project=$COVERITY_SCAN_PROJECT_NAME --form token=$COVERITY_SCAN_TOKEN -o /tmp/cov-analysis-linux64.tgz
 | 
			
		||||
    - tar xfz /tmp/cov-analysis-linux64.tgz
 | 
			
		||||
    - meson setup build --werror || (cat build/meson-logs/meson-log.txt && exit 1)
 | 
			
		||||
    - cov-analysis-linux64-*/bin/cov-build --dir cov-int meson compile -C build
 | 
			
		||||
    - tar cfz cov-int.tar.gz cov-int
 | 
			
		||||
    - curl https://scan.coverity.com/builds?project=$COVERITY_SCAN_PROJECT_NAME --form token=$COVERITY_SCAN_TOKEN --form email=$GITLAB_USER_EMAIL --form file=@cov-int.tar.gz --form version="$(git describe --tags)" --form description="$(git describe --tags) / $CI_COMMIT_TITLE / $CI_COMMIT_REF_NAME:$CI_PIPELINE_ID"
 | 
			
		||||
  variables:
 | 
			
		||||
    NAME: almalinux-9
 | 
			
		||||
  rules:
 | 
			
		||||
    - if: '$COVERITY_SCAN_PROJECT_NAME == null || $COVERITY_SCAN_TOKEN == null'
 | 
			
		||||
      when: never
 | 
			
		||||
    - if: '$CI_PROJECT_NAMESPACE == $RUN_UPSTREAM_NAMESPACE && $CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH'
 | 
			
		||||
      when: on_success
 | 
			
		||||
    - when: never
 | 
			
		||||
@@ -1,19 +0,0 @@
 | 
			
		||||
<!-- See https://libvirt.org/bugs.html#how-to-file-high-quality-bug-reports -->
 | 
			
		||||
 | 
			
		||||
## Software environment
 | 
			
		||||
 - Operating system:
 | 
			
		||||
 - Architecture:
 | 
			
		||||
 - kernel version:
 | 
			
		||||
 - libvirt version:
 | 
			
		||||
 - Hypervisor and version:
 | 
			
		||||
 | 
			
		||||
## Description of problem
 | 
			
		||||
 | 
			
		||||
## Steps to reproduce
 | 
			
		||||
1.
 | 
			
		||||
2.
 | 
			
		||||
3.
 | 
			
		||||
 | 
			
		||||
## Additional information
 | 
			
		||||
<!-- Attach XML configs, logs, stack traces, etc. Compress the files if necessary -->
 | 
			
		||||
<!-- See https://libvirt.org/kbase/debuglogs.html on how to configure logging -->
 | 
			
		||||
@@ -1,25 +0,0 @@
 | 
			
		||||
<!--
 | 
			
		||||
This is the upstream libvirt issue tracker.
 | 
			
		||||
 | 
			
		||||
Please note that libvirt, like most open source projects, relies on
 | 
			
		||||
contributors who have motivation, skills and available time to work on
 | 
			
		||||
implementing particular features.
 | 
			
		||||
 | 
			
		||||
Feature requests can be helpful for determining demand and interest, but
 | 
			
		||||
they are not a guarantee that a contributor will volunteer to implement
 | 
			
		||||
it. We welcome and encourage even draft patches to implement a feature
 | 
			
		||||
be sent to the mailing list where it can be discussed and developed
 | 
			
		||||
further by the community.
 | 
			
		||||
 | 
			
		||||
Thank you for your interest in helping us to make libvirt better!
 | 
			
		||||
-->
 | 
			
		||||
 | 
			
		||||
## Goal
 | 
			
		||||
<!-- Describe the final result you want to achieve. Avoid design specifics. -->
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## Technical details
 | 
			
		||||
<!-- Describe technical details, design specifics, suggestions, versions, etc. -->
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## Additional information
 | 
			
		||||
@@ -1,54 +0,0 @@
 | 
			
		||||
# Redirects to golang module pages
 | 
			
		||||
/libvirt-go /libvirt-go.html 200
 | 
			
		||||
/libvirt-go-xml /libvirt-go-xml.html 200
 | 
			
		||||
/go/libvirt /go/libvirt.html 200
 | 
			
		||||
/go/libvirtxml /go/libvirtxml.html 200
 | 
			
		||||
 | 
			
		||||
# Redirects to the download server
 | 
			
		||||
/sources/* https://download.libvirt.org/:splat 301
 | 
			
		||||
/ruby/download/* https://download.libvirt.org/ruby/:splat 301
 | 
			
		||||
/maven2/org/libvirt/* https://download.libvirt.org/maven2/org/libvirt/:splat 301
 | 
			
		||||
 | 
			
		||||
# Redirects to subproject pages
 | 
			
		||||
/ruby/* https://ruby.libvirt.org/:splat 301
 | 
			
		||||
/ocaml/* https://ocaml.libvirt.org/:splat 301
 | 
			
		||||
/php/* https://php.libvirt.org/:splat 301
 | 
			
		||||
/libvirt-appdev-guide-python/en-US/html/* https://libvirt.gitlab.io/libvirt-appdev-guide-python/:splat: 301
 | 
			
		||||
/java.html https://java.libvirt.org 301
 | 
			
		||||
# Redirect to the proper javadoc directory on the subproject page
 | 
			
		||||
/sources/java/javadoc/* https://java.libvirt.org/javadoc/:splat 301
 | 
			
		||||
 | 
			
		||||
# Redirects from old gitweb location (see below)
 | 
			
		||||
/git https://gitlab.com/libvirt/ 301
 | 
			
		||||
 | 
			
		||||
# The above rules are adapted from the following set of 'mod_rewrite' rules used
 | 
			
		||||
# originally on libvirt.org:
 | 
			
		||||
#
 | 
			
		||||
#    RewriteRule ^/libvirt-go$ /libvirt-go.html [L]
 | 
			
		||||
#    RewriteRule ^/libvirt-go-xml$ /libvirt-go-xml.html [L]
 | 
			
		||||
#    RewriteRule ^/go/libvirt$ /go/libvirt.html [L]
 | 
			
		||||
#    RewriteRule ^/go/libvirtxml$ /go/libvirtxml.html [L]
 | 
			
		||||
#    RewriteRule ^/sources/(.*) https://download.libvirt.org/$1 [L]
 | 
			
		||||
#    RewriteRule ^/ruby/download/(.*) https://download.libvirt.org/ruby/$1 [L]
 | 
			
		||||
#    RewriteRule ^/(maven2/org/libvirt.*) https://download.libvirt.org/$1 [L]
 | 
			
		||||
#    RewriteRule ^/ocaml/(.*) https://ocaml.libvirt.org/$1 [L]
 | 
			
		||||
#    RewriteRule ^/ruby/(.*) https://ruby.libvirt.org/$1 [L]
 | 
			
		||||
#    RewriteRule ^/php/(.*) https://php.libvirt.org/$1 [L]
 | 
			
		||||
#    RewriteRule ^/java.html https://java.libvirt.org [L]
 | 
			
		||||
#    RewriteRule ^/docs/libvirt-appdev-guide-python/en-US/html/(.*) https://libvirt.gitlab.io/libvirt-appdev-guide-python/$1 [L]
 | 
			
		||||
#    RewriteRule ^/git https://gitlab.com/libvirt/ [L]
 | 
			
		||||
#
 | 
			
		||||
#  Redirect replacing 'gitweb'. The 'gitweb' interface was originally replaced
 | 
			
		||||
#  by the following redirect condition:
 | 
			
		||||
#
 | 
			
		||||
#    RewriteCond %{QUERY_STRING} p=([-a-zA-Z0-9]+).git
 | 
			
		||||
#    RewriteRule ^/git/$ https://gitlab.com/libvirt/%1 [L]
 | 
			
		||||
#
 | 
			
		||||
# That unfortunately can't be represented in gitlab redirects as it doesn't
 | 
			
		||||
# support redirects based on query strings. Given that the above redirect broke
 | 
			
		||||
# most gitweb links anyways, due to handling only the 'p=' argument, git gitlab
 | 
			
		||||
# redirect will break the rest of them.
 | 
			
		||||
#
 | 
			
		||||
#  The following rule was dropped as the page never existed:
 | 
			
		||||
#
 | 
			
		||||
#    RewriteRule ^/libvirt-console-proxy$ /libvirt-console-proxy.html [L]
 | 
			
		||||
							
								
								
									
										6
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							@@ -1,3 +1,3 @@
 | 
			
		||||
[submodule "keycodemapdb"]
 | 
			
		||||
	path = subprojects/keycodemapdb
 | 
			
		||||
	url = https://gitlab.com/keycodemap/keycodemapdb.git
 | 
			
		||||
[submodule "gnulib"]
 | 
			
		||||
	path = .gnulib
 | 
			
		||||
	url = git://git.sv.gnu.org/gnulib.git
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +0,0 @@
 | 
			
		||||
[gitpublishprofile "default"]
 | 
			
		||||
base = master
 | 
			
		||||
to = devel@lists.libvirt.org
 | 
			
		||||
prefix = PATCH
 | 
			
		||||
suppresscc = misc-by
 | 
			
		||||
							
								
								
									
										1
									
								
								.gnulib
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								.gnulib
									
									
									
									
									
										Submodule
									
								
							 Submodule .gnulib added at b4938324b7
									
								
							
							
								
								
									
										28
									
								
								.mailmap
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								.mailmap
									
									
									
									
									
								
							@@ -5,10 +5,7 @@
 | 
			
		||||
 | 
			
		||||
<bozzolan@gmail.com> <redshift@gmx.com>
 | 
			
		||||
<charles_duffy@messageone.com> <charles@dyfis.net>
 | 
			
		||||
<claudio.bley@gmail.com> <cbley@av-test.de>
 | 
			
		||||
<dfj@redhat.com> <dfj@dfj.bne.redhat.com>
 | 
			
		||||
<dpkshetty@gmail.com> <deepakcs@linux.vnet.ibm.com>
 | 
			
		||||
<dpkshetty@gmail.com> <deepakcs@redhat.com>
 | 
			
		||||
<eblake@redhat.com> <ebb9@byu.net>
 | 
			
		||||
<gdolley@arpnetworks.com> <gdolley@ucla.edu>
 | 
			
		||||
<gerhard.stenzel@de.ibm.com> <gstenzel@linux.vnet.ibm.com>
 | 
			
		||||
@@ -20,6 +17,7 @@
 | 
			
		||||
<jfehlig@suse.com> <jfehlig@novell.com>
 | 
			
		||||
<jfehlig@suse.com> <jfehlig@linux-ypgk.site>
 | 
			
		||||
<jclift@redhat.com> <justin@salasaga.org>
 | 
			
		||||
<berrange@redhat.com> <dan@berrange.com>
 | 
			
		||||
<soren@linux2go.dk> <soren@canonical.com>
 | 
			
		||||
<cfergeau@redhat.com> <teuf@gnome.org>
 | 
			
		||||
<wency@cn.fujitsu.com> <wency cn fujitsu com>
 | 
			
		||||
@@ -38,16 +36,6 @@
 | 
			
		||||
<zhlcindy@linux.vnet.ibm.com> <zhlcindy@gmail.com>
 | 
			
		||||
<serge.hallyn@canonical.com> <serue@us.ibm.com>
 | 
			
		||||
<pritesh.kothari@sun.com> <Pritesh.Kothari@Sun.COM>
 | 
			
		||||
<cbosdonnat@suse.com> <cedric.bosdonnat@free.fr>
 | 
			
		||||
<mnestratov@virtuozzo.com> <mnestratov@parallels.com>
 | 
			
		||||
<nshirokovskiy@virtuozzo.com> <nshirokovskiy@parallels.com>
 | 
			
		||||
<jyang@redhat.com> <osier@yunify.com>
 | 
			
		||||
<kkoukiou@redhat.com> <k.koukiou@googlemail.com>
 | 
			
		||||
<intrigeri@boum.org> <intrigeri+libvirt@boum.org>
 | 
			
		||||
<fidencio@redhat.com> <fabiano@fidencio.org>
 | 
			
		||||
<shi_lei@massclouds.com> <shilei.massclouds@gmx.com>
 | 
			
		||||
<adrian.brzezinski@eo.pl> <redhat@adrb.pl>
 | 
			
		||||
<matt@datto.com> <mcoleman@datto.com>
 | 
			
		||||
 | 
			
		||||
# Name consolidation:
 | 
			
		||||
# Preferred author spelling <preferred email>
 | 
			
		||||
@@ -65,16 +53,6 @@ Aurelien Rougemont <beorn@binaries.fr>
 | 
			
		||||
Serge E. Hallyn <serge.hallyn@canonical.com>
 | 
			
		||||
Henrik Persson E <henrik.e.persson@ericsson.com>
 | 
			
		||||
Philipp Hahn <hahn@univention.de>
 | 
			
		||||
Marco Bozzolan <bozzolan@gmail.com>
 | 
			
		||||
Marco Bozzolan <redshift@gmx.com>
 | 
			
		||||
Pritesh Kothari <pritesh.kothari@sun.com>
 | 
			
		||||
Wang Yufei (James) <james.wangyufei@huawei.com>
 | 
			
		||||
Deepak C Shetty <dpkshetty@gmail.com>
 | 
			
		||||
Dave Allan <dallan@redhat.com>
 | 
			
		||||
Richard W.M. Jones <rjones@redhat.com>
 | 
			
		||||
 | 
			
		||||
# Non-trivial consolidation:
 | 
			
		||||
# see git documentation for information about the format
 | 
			
		||||
Daniel P. Berrangé <berrange@redhat.com>
 | 
			
		||||
Daniel P. Berrangé <berrange@redhat.com> <dan@berrange.com>
 | 
			
		||||
Michal Prívozník <mprivozn@redhat.com>
 | 
			
		||||
Michal Prívozník <mprivozn@redhat.com> <miso.privoznik@gmail.com>
 | 
			
		||||
Marco Bozzolan <bozzolan@gmail.com> <redshift@gmx.com>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										89
									
								
								AUTHORS.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										89
									
								
								AUTHORS.in
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,89 @@
 | 
			
		||||
   libvirt Authors
 | 
			
		||||
   ===============
 | 
			
		||||
 | 
			
		||||
The libvirt project was initiated by:
 | 
			
		||||
 | 
			
		||||
Daniel Veillard <veillard@redhat.com> or <daniel@veillard.com>
 | 
			
		||||
 | 
			
		||||
The primary maintainers and people with commit access rights:
 | 
			
		||||
 | 
			
		||||
Alex Jia <ajia@redhat.com>
 | 
			
		||||
Anthony Liguori <aliguori@us.ibm.com>
 | 
			
		||||
Chris Lalancette <clalance@redhat.com>
 | 
			
		||||
Christophe Fergeau <cfergeau@redhat.com>
 | 
			
		||||
Cole Robinson <crobinso@redhat.com>
 | 
			
		||||
Daniel Berrange <berrange@redhat.com>
 | 
			
		||||
Daniel Veillard <veillard@redhat.com>
 | 
			
		||||
Dave Allan <dallan@redhat.com>
 | 
			
		||||
Doug Goldstein <cardoe@gentoo.org>
 | 
			
		||||
Eric Blake <eblake@redhat.com>
 | 
			
		||||
Guido Günther <agx@sigxcpu.org>
 | 
			
		||||
Jim Fehlig <jfehlig@suse.com>
 | 
			
		||||
Jim Meyering <meyering@redhat.com>
 | 
			
		||||
Jiří Denemark <jdenemar@redhat.com>
 | 
			
		||||
John Levon <john.levon@sun.com>
 | 
			
		||||
Justin Clift <jclift@redhat.com>
 | 
			
		||||
Laine Stump <laine@redhat.com>
 | 
			
		||||
Mark McLoughlin <markmc@redhat.com>
 | 
			
		||||
Martin Kletzander <mkletzan@redhat.com>
 | 
			
		||||
Matthias Bolte <matthias.bolte@googlemail.com>
 | 
			
		||||
Michal Prívozník <mprivozn@redhat.com>
 | 
			
		||||
Osier Yang <jyang@redhat.com>
 | 
			
		||||
Peter Krempa <pkrempa@redhat.com>
 | 
			
		||||
Richard W.M. Jones <rjones@redhat.com>
 | 
			
		||||
Stefan Berger <stefanb@us.ibm.com>
 | 
			
		||||
Wen Congyang <wency@cn.fujitsu.com>
 | 
			
		||||
 | 
			
		||||
Previous maintainers:
 | 
			
		||||
 | 
			
		||||
Atsushi SAKAI <sakaia@jp.fujitsu.com>
 | 
			
		||||
Dan Smith <danms@us.ibm.com>
 | 
			
		||||
Dave Leskovec <dlesko@linux.vnet.ibm.com>
 | 
			
		||||
Karel Zak <kzak@redhat.com>
 | 
			
		||||
 | 
			
		||||
Patches have also been contributed by:
 | 
			
		||||
 | 
			
		||||
Abel Míguez Rodríguez <amiguezr@pdi.ucm.es>
 | 
			
		||||
Amit Shah <amit.shah@redhat.com>
 | 
			
		||||
Andrew Puch <apuch@redhat.com>
 | 
			
		||||
Anton Protopopov <aspsk2@gmail.com>
 | 
			
		||||
Ben Guthro <ben.guthro@gmail.com>
 | 
			
		||||
Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
 | 
			
		||||
Daniel Hokka Zakrisson <daniel@hozac.com>
 | 
			
		||||
Dan Wendlandt <dan@nicira.com>
 | 
			
		||||
David Lively <dlively@virtualiron.com>
 | 
			
		||||
David Lutterkort <dlutter@redhat.com>
 | 
			
		||||
Evgeniy Sokolov <evg@openvz.org>
 | 
			
		||||
Hugh Brock <hbrock@redhat.com>
 | 
			
		||||
Itamar Heim <iheim@redhat.com>
 | 
			
		||||
James Morris <jmorris@namei.org>
 | 
			
		||||
Javier Fontan <jfontan@gmail.com>
 | 
			
		||||
Jeremy Katz <katzj@redhat.com>
 | 
			
		||||
Kaitlin Rupert <kaitlin@linux.vnet.ibm.com>
 | 
			
		||||
Kazuki Mizushima <mizushima.kazuk@jp.fujitsu.com>
 | 
			
		||||
Mads Chr. Olesen <shiyee@shiyee.dk>
 | 
			
		||||
Mark Johnson <johnson.nh@gmail.com>
 | 
			
		||||
Markus Armbruster <armbru@redhat.com>
 | 
			
		||||
Masayuki Sunou <fj1826dm@aa.jp.fujitsu.com>
 | 
			
		||||
Matthias Witte <witte@netzquadrat.de>
 | 
			
		||||
Michel Ponceau <michel.ponceau@bull.net>
 | 
			
		||||
Nobuhiro Itou <fj0873gn@aa.jp.fujitsu.com>
 | 
			
		||||
Pete Vetere <pvetere@redhat.com>
 | 
			
		||||
Philippe Berthault <philippe.berthault@Bull.net>
 | 
			
		||||
Saori Fukuta <fukuta.saori@jp.fujitsu.com>
 | 
			
		||||
Shigeki Sakamoto <fj0588di@aa.jp.fujitsu.com>
 | 
			
		||||
Shuveb Hussain <shuveb@binarykarma.com>
 | 
			
		||||
Stefan de Konink <dekonink@kinkrsoftware.nl>
 | 
			
		||||
Takahashi Tomohiro <takatom@jp.fujitsu.com>
 | 
			
		||||
Tatsuro Enokura <fj7716hz@aa.jp.fujitsu.com>
 | 
			
		||||
 | 
			
		||||
#authorslist#
 | 
			
		||||
 | 
			
		||||
[....send patches to get your name here....]
 | 
			
		||||
 | 
			
		||||
The libvirt logo was designed by Diana Fong
 | 
			
		||||
 | 
			
		||||
-- End
 | 
			
		||||
;; Local Variables:
 | 
			
		||||
;; coding: utf-8
 | 
			
		||||
;; End:
 | 
			
		||||
							
								
								
									
										100
									
								
								AUTHORS.rst.in
									
									
									
									
									
								
							
							
						
						
									
										100
									
								
								AUTHORS.rst.in
									
									
									
									
									
								
							@@ -1,100 +0,0 @@
 | 
			
		||||
===============
 | 
			
		||||
libvirt Authors
 | 
			
		||||
===============
 | 
			
		||||
 | 
			
		||||
The libvirt project was initiated by:
 | 
			
		||||
 | 
			
		||||
* Daniel Veillard <veillard@redhat.com> or <daniel@veillard.com>
 | 
			
		||||
 | 
			
		||||
The primary maintainers and people with commit access rights:
 | 
			
		||||
 | 
			
		||||
* Andrea Bolognani <abologna@redhat.com>
 | 
			
		||||
* Cédric Bosdonnat <cbosdonnat@suse.com>
 | 
			
		||||
* Christian Ehrhardt <christian.ehrhardt@canonical.com>
 | 
			
		||||
* Christophe Fergeau <cfergeau@redhat.com>
 | 
			
		||||
* Cole Robinson <crobinso@redhat.com>
 | 
			
		||||
* Daniel P. Berrangé <berrange@redhat.com>
 | 
			
		||||
* Daniel Veillard <veillard@redhat.com>
 | 
			
		||||
* Eric Blake <eblake@redhat.com>
 | 
			
		||||
* Erik Skultety <eskultet@redhat.com>
 | 
			
		||||
* Fabiano Fidêncio <fidencio@redhat.com>
 | 
			
		||||
* Guido Günther <agx@sigxcpu.org>
 | 
			
		||||
* Ján Tomko <jtomko@redhat.com>
 | 
			
		||||
* Jim Fehlig <jfehlig@suse.com>
 | 
			
		||||
* Jiří Denemark <jdenemar@redhat.com>
 | 
			
		||||
* Laine Stump <laine@redhat.com>
 | 
			
		||||
* Martin Kletzander <mkletzan@redhat.com>
 | 
			
		||||
* Michal Prívozník <mprivozn@redhat.com>
 | 
			
		||||
* Nikolay Shirokovskiy <nshirokovskiy@openvz.org>
 | 
			
		||||
* Pavel Hrdina <phrdina@redhat.com>
 | 
			
		||||
* Peter Krempa <pkrempa@redhat.com>
 | 
			
		||||
* Pino Toscano <ptoscano@redhat.com>
 | 
			
		||||
* Richard W.M. Jones <rjones@redhat.com>
 | 
			
		||||
* Roman Bogorodskiy <bogorodskiy@gmail.com>
 | 
			
		||||
* Tim Wiederhake <twiederh@redhat.com>
 | 
			
		||||
 | 
			
		||||
Previous maintainers:
 | 
			
		||||
 | 
			
		||||
* Alex Jia <ajia@redhat.com>
 | 
			
		||||
* Anthony Liguori <aliguori@us.ibm.com>
 | 
			
		||||
* Atsushi SAKAI <sakaia@jp.fujitsu.com>
 | 
			
		||||
* Chris Lalancette <clalance@redhat.com>
 | 
			
		||||
* Claudio Bley <claudio.bley@gmail.com>
 | 
			
		||||
* Dan Smith <danms@us.ibm.com>
 | 
			
		||||
* Dave Allan <dallan@redhat.com>
 | 
			
		||||
* Dave Leskovec <dlesko@linux.vnet.ibm.com>
 | 
			
		||||
* Dmitry Guryanov <dguryanov@parallels.com>
 | 
			
		||||
* Doug Goldstein <cardoe@gentoo.org>
 | 
			
		||||
* Gao Feng <gaofeng@cn.fujitsu.com>
 | 
			
		||||
* Guannan Ren <gren@redhat.com>
 | 
			
		||||
* Jim Meyering <meyering@redhat.com>
 | 
			
		||||
* John Ferlan <jferlan@redhat.com>
 | 
			
		||||
* John Levon <john.levon@sun.com>
 | 
			
		||||
* Justin Clift <jclift@redhat.com>
 | 
			
		||||
* Karel Zak <kzak@redhat.com>
 | 
			
		||||
* Katerina Koukiou <kkoukiou@redhat.com>
 | 
			
		||||
* Mark McLoughlin <markmc@redhat.com>
 | 
			
		||||
* Matthias Bolte <matthias.bolte@googlemail.com>
 | 
			
		||||
* Maxim Nestratov <mnestratov@virtuozzo.com>
 | 
			
		||||
* Osier Yang <jyang@redhat.com>
 | 
			
		||||
* Stefan Berger <stefanb@us.ibm.com>
 | 
			
		||||
* Wen Congyang <wency@cn.fujitsu.com>
 | 
			
		||||
 | 
			
		||||
Patches have also been contributed by:
 | 
			
		||||
 | 
			
		||||
* Abel Míguez Rodríguez <amiguezr@pdi.ucm.es>
 | 
			
		||||
* Amit Shah <amit.shah@redhat.com>
 | 
			
		||||
* Andrew Puch <apuch@redhat.com>
 | 
			
		||||
* Anton Protopopov <aspsk2@gmail.com>
 | 
			
		||||
* Ben Guthro <ben.guthro@gmail.com>
 | 
			
		||||
* Daniel Hokka Zakrisson <daniel@hozac.com>
 | 
			
		||||
* Dan Wendlandt <dan@nicira.com>
 | 
			
		||||
* David Lively <dlively@virtualiron.com>
 | 
			
		||||
* David Lutterkort <dlutter@redhat.com>
 | 
			
		||||
* Evgeniy Sokolov <evg@openvz.org>
 | 
			
		||||
* Hugh Brock <hbrock@redhat.com>
 | 
			
		||||
* Itamar Heim <iheim@redhat.com>
 | 
			
		||||
* James Morris <jmorris@namei.org>
 | 
			
		||||
* Javier Fontan <jfontan@gmail.com>
 | 
			
		||||
* Jeremy Katz <katzj@redhat.com>
 | 
			
		||||
* Kaitlin Rupert <kaitlin@linux.vnet.ibm.com>
 | 
			
		||||
* Kazuki Mizushima <mizushima.kazuk@jp.fujitsu.com>
 | 
			
		||||
* Mads Chr. Olesen <shiyee@shiyee.dk>
 | 
			
		||||
* Mark Johnson <johnson.nh@gmail.com>
 | 
			
		||||
* Markus Armbruster <armbru@redhat.com>
 | 
			
		||||
* Masayuki Sunou <fj1826dm@aa.jp.fujitsu.com>
 | 
			
		||||
* Matthias Witte <witte@netzquadrat.de>
 | 
			
		||||
* Michel Ponceau <michel.ponceau@bull.net>
 | 
			
		||||
* Nobuhiro Itou <fj0873gn@aa.jp.fujitsu.com>
 | 
			
		||||
* Pete Vetere <pvetere@redhat.com>
 | 
			
		||||
* Philippe Berthault <philippe.berthault@Bull.net>
 | 
			
		||||
* Saori Fukuta <fukuta.saori@jp.fujitsu.com>
 | 
			
		||||
* Shigeki Sakamoto <fj0588di@aa.jp.fujitsu.com>
 | 
			
		||||
* Shuveb Hussain <shuveb@binarykarma.com>
 | 
			
		||||
* Stefan de Konink <dekonink@kinkrsoftware.nl>
 | 
			
		||||
* Takahashi Tomohiro <takatom@jp.fujitsu.com>
 | 
			
		||||
* Tatsuro Enokura <fj7716hz@aa.jp.fujitsu.com>
 | 
			
		||||
 | 
			
		||||
@contributorslist@
 | 
			
		||||
 | 
			
		||||
The libvirt logo was designed by Diana Fong
 | 
			
		||||
@@ -1,45 +0,0 @@
 | 
			
		||||
=======================
 | 
			
		||||
Contributing to libvirt
 | 
			
		||||
=======================
 | 
			
		||||
 | 
			
		||||
Full, up to date information on how to contribute to libvirt can be
 | 
			
		||||
found on the libvirt website:
 | 
			
		||||
 | 
			
		||||
https://libvirt.org/contribute.html
 | 
			
		||||
 | 
			
		||||
To build the same document locally, from the top level directory of
 | 
			
		||||
your git clone run:
 | 
			
		||||
 | 
			
		||||
::
 | 
			
		||||
 | 
			
		||||
   $ meson build
 | 
			
		||||
   $ ninja -C build
 | 
			
		||||
 | 
			
		||||
You'll find the freshly-built document in ``docs/contribute.html``.
 | 
			
		||||
 | 
			
		||||
If ``meson setup`` fails because of missing dependencies, you can set
 | 
			
		||||
up your system by calling
 | 
			
		||||
 | 
			
		||||
::
 | 
			
		||||
 | 
			
		||||
   $ sudo dnf builddep libvirt
 | 
			
		||||
 | 
			
		||||
if you're on a RHEL-based distribution or
 | 
			
		||||
 | 
			
		||||
::
 | 
			
		||||
 | 
			
		||||
   $ sudo apt-get build-dep libvirt
 | 
			
		||||
 | 
			
		||||
if you're on a Debian-based one.
 | 
			
		||||
 | 
			
		||||
Note that, for the RHEL-based case, if you're on a machine where you
 | 
			
		||||
haven't done any C development before, you will probably also need
 | 
			
		||||
to run
 | 
			
		||||
 | 
			
		||||
::
 | 
			
		||||
 | 
			
		||||
   $ sudo dnf install gcc make ninja-build rpm-build
 | 
			
		||||
 | 
			
		||||
You might still be missing some dependencies if your distribution is
 | 
			
		||||
shipping an old libvirt version, but that will get you much closer to
 | 
			
		||||
where you need to be to build successfully from source.
 | 
			
		||||
							
								
								
									
										339
									
								
								COPYING
									
									
									
									
									
								
							
							
						
						
									
										339
									
								
								COPYING
									
									
									
									
									
								
							@@ -1,339 +0,0 @@
 | 
			
		||||
                    GNU GENERAL PUBLIC LICENSE
 | 
			
		||||
                       Version 2, June 1991
 | 
			
		||||
 | 
			
		||||
 Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
 | 
			
		||||
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 | 
			
		||||
 Everyone is permitted to copy and distribute verbatim copies
 | 
			
		||||
 of this license document, but changing it is not allowed.
 | 
			
		||||
 | 
			
		||||
                            Preamble
 | 
			
		||||
 | 
			
		||||
  The licenses for most software are designed to take away your
 | 
			
		||||
freedom to share and change it.  By contrast, the GNU General Public
 | 
			
		||||
License is intended to guarantee your freedom to share and change free
 | 
			
		||||
software--to make sure the software is free for all its users.  This
 | 
			
		||||
General Public License applies to most of the Free Software
 | 
			
		||||
Foundation's software and to any other program whose authors commit to
 | 
			
		||||
using it.  (Some other Free Software Foundation software is covered by
 | 
			
		||||
the GNU Lesser General Public License instead.)  You can apply it to
 | 
			
		||||
your programs, too.
 | 
			
		||||
 | 
			
		||||
  When we speak of free software, we are referring to freedom, not
 | 
			
		||||
price.  Our General Public Licenses are designed to make sure that you
 | 
			
		||||
have the freedom to distribute copies of free software (and charge for
 | 
			
		||||
this service if you wish), that you receive source code or can get it
 | 
			
		||||
if you want it, that you can change the software or use pieces of it
 | 
			
		||||
in new free programs; and that you know you can do these things.
 | 
			
		||||
 | 
			
		||||
  To protect your rights, we need to make restrictions that forbid
 | 
			
		||||
anyone to deny you these rights or to ask you to surrender the rights.
 | 
			
		||||
These restrictions translate to certain responsibilities for you if you
 | 
			
		||||
distribute copies of the software, or if you modify it.
 | 
			
		||||
 | 
			
		||||
  For example, if you distribute copies of such a program, whether
 | 
			
		||||
gratis or for a fee, you must give the recipients all the rights that
 | 
			
		||||
you have.  You must make sure that they, too, receive or can get the
 | 
			
		||||
source code.  And you must show them these terms so they know their
 | 
			
		||||
rights.
 | 
			
		||||
 | 
			
		||||
  We protect your rights with two steps: (1) copyright the software, and
 | 
			
		||||
(2) offer you this license which gives you legal permission to copy,
 | 
			
		||||
distribute and/or modify the software.
 | 
			
		||||
 | 
			
		||||
  Also, for each author's protection and ours, we want to make certain
 | 
			
		||||
that everyone understands that there is no warranty for this free
 | 
			
		||||
software.  If the software is modified by someone else and passed on, we
 | 
			
		||||
want its recipients to know that what they have is not the original, so
 | 
			
		||||
that any problems introduced by others will not reflect on the original
 | 
			
		||||
authors' reputations.
 | 
			
		||||
 | 
			
		||||
  Finally, any free program is threatened constantly by software
 | 
			
		||||
patents.  We wish to avoid the danger that redistributors of a free
 | 
			
		||||
program will individually obtain patent licenses, in effect making the
 | 
			
		||||
program proprietary.  To prevent this, we have made it clear that any
 | 
			
		||||
patent must be licensed for everyone's free use or not licensed at all.
 | 
			
		||||
 | 
			
		||||
  The precise terms and conditions for copying, distribution and
 | 
			
		||||
modification follow.
 | 
			
		||||
 | 
			
		||||
                    GNU GENERAL PUBLIC LICENSE
 | 
			
		||||
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 | 
			
		||||
 | 
			
		||||
  0. This License applies to any program or other work which contains
 | 
			
		||||
a notice placed by the copyright holder saying it may be distributed
 | 
			
		||||
under the terms of this General Public License.  The "Program", below,
 | 
			
		||||
refers to any such program or work, and a "work based on the Program"
 | 
			
		||||
means either the Program or any derivative work under copyright law:
 | 
			
		||||
that is to say, a work containing the Program or a portion of it,
 | 
			
		||||
either verbatim or with modifications and/or translated into another
 | 
			
		||||
language.  (Hereinafter, translation is included without limitation in
 | 
			
		||||
the term "modification".)  Each licensee is addressed as "you".
 | 
			
		||||
 | 
			
		||||
Activities other than copying, distribution and modification are not
 | 
			
		||||
covered by this License; they are outside its scope.  The act of
 | 
			
		||||
running the Program is not restricted, and the output from the Program
 | 
			
		||||
is covered only if its contents constitute a work based on the
 | 
			
		||||
Program (independent of having been made by running the Program).
 | 
			
		||||
Whether that is true depends on what the Program does.
 | 
			
		||||
 | 
			
		||||
  1. You may copy and distribute verbatim copies of the Program's
 | 
			
		||||
source code as you receive it, in any medium, provided that you
 | 
			
		||||
conspicuously and appropriately publish on each copy an appropriate
 | 
			
		||||
copyright notice and disclaimer of warranty; keep intact all the
 | 
			
		||||
notices that refer to this License and to the absence of any warranty;
 | 
			
		||||
and give any other recipients of the Program a copy of this License
 | 
			
		||||
along with the Program.
 | 
			
		||||
 | 
			
		||||
You may charge a fee for the physical act of transferring a copy, and
 | 
			
		||||
you may at your option offer warranty protection in exchange for a fee.
 | 
			
		||||
 | 
			
		||||
  2. You may modify your copy or copies of the Program or any portion
 | 
			
		||||
of it, thus forming a work based on the Program, and copy and
 | 
			
		||||
distribute such modifications or work under the terms of Section 1
 | 
			
		||||
above, provided that you also meet all of these conditions:
 | 
			
		||||
 | 
			
		||||
    a) You must cause the modified files to carry prominent notices
 | 
			
		||||
    stating that you changed the files and the date of any change.
 | 
			
		||||
 | 
			
		||||
    b) You must cause any work that you distribute or publish, that in
 | 
			
		||||
    whole or in part contains or is derived from the Program or any
 | 
			
		||||
    part thereof, to be licensed as a whole at no charge to all third
 | 
			
		||||
    parties under the terms of this License.
 | 
			
		||||
 | 
			
		||||
    c) If the modified program normally reads commands interactively
 | 
			
		||||
    when run, you must cause it, when started running for such
 | 
			
		||||
    interactive use in the most ordinary way, to print or display an
 | 
			
		||||
    announcement including an appropriate copyright notice and a
 | 
			
		||||
    notice that there is no warranty (or else, saying that you provide
 | 
			
		||||
    a warranty) and that users may redistribute the program under
 | 
			
		||||
    these conditions, and telling the user how to view a copy of this
 | 
			
		||||
    License.  (Exception: if the Program itself is interactive but
 | 
			
		||||
    does not normally print such an announcement, your work based on
 | 
			
		||||
    the Program is not required to print an announcement.)
 | 
			
		||||
 | 
			
		||||
These requirements apply to the modified work as a whole.  If
 | 
			
		||||
identifiable sections of that work are not derived from the Program,
 | 
			
		||||
and can be reasonably considered independent and separate works in
 | 
			
		||||
themselves, then this License, and its terms, do not apply to those
 | 
			
		||||
sections when you distribute them as separate works.  But when you
 | 
			
		||||
distribute the same sections as part of a whole which is a work based
 | 
			
		||||
on the Program, the distribution of the whole must be on the terms of
 | 
			
		||||
this License, whose permissions for other licensees extend to the
 | 
			
		||||
entire whole, and thus to each and every part regardless of who wrote it.
 | 
			
		||||
 | 
			
		||||
Thus, it is not the intent of this section to claim rights or contest
 | 
			
		||||
your rights to work written entirely by you; rather, the intent is to
 | 
			
		||||
exercise the right to control the distribution of derivative or
 | 
			
		||||
collective works based on the Program.
 | 
			
		||||
 | 
			
		||||
In addition, mere aggregation of another work not based on the Program
 | 
			
		||||
with the Program (or with a work based on the Program) on a volume of
 | 
			
		||||
a storage or distribution medium does not bring the other work under
 | 
			
		||||
the scope of this License.
 | 
			
		||||
 | 
			
		||||
  3. You may copy and distribute the Program (or a work based on it,
 | 
			
		||||
under Section 2) in object code or executable form under the terms of
 | 
			
		||||
Sections 1 and 2 above provided that you also do one of the following:
 | 
			
		||||
 | 
			
		||||
    a) Accompany it with the complete corresponding machine-readable
 | 
			
		||||
    source code, which must be distributed under the terms of Sections
 | 
			
		||||
    1 and 2 above on a medium customarily used for software interchange; or,
 | 
			
		||||
 | 
			
		||||
    b) Accompany it with a written offer, valid for at least three
 | 
			
		||||
    years, to give any third party, for a charge no more than your
 | 
			
		||||
    cost of physically performing source distribution, a complete
 | 
			
		||||
    machine-readable copy of the corresponding source code, to be
 | 
			
		||||
    distributed under the terms of Sections 1 and 2 above on a medium
 | 
			
		||||
    customarily used for software interchange; or,
 | 
			
		||||
 | 
			
		||||
    c) Accompany it with the information you received as to the offer
 | 
			
		||||
    to distribute corresponding source code.  (This alternative is
 | 
			
		||||
    allowed only for noncommercial distribution and only if you
 | 
			
		||||
    received the program in object code or executable form with such
 | 
			
		||||
    an offer, in accord with Subsection b above.)
 | 
			
		||||
 | 
			
		||||
The source code for a work means the preferred form of the work for
 | 
			
		||||
making modifications to it.  For an executable work, complete source
 | 
			
		||||
code means all the source code for all modules it contains, plus any
 | 
			
		||||
associated interface definition files, plus the scripts used to
 | 
			
		||||
control compilation and installation of the executable.  However, as a
 | 
			
		||||
special exception, the source code distributed need not include
 | 
			
		||||
anything that is normally distributed (in either source or binary
 | 
			
		||||
form) with the major components (compiler, kernel, and so on) of the
 | 
			
		||||
operating system on which the executable runs, unless that component
 | 
			
		||||
itself accompanies the executable.
 | 
			
		||||
 | 
			
		||||
If distribution of executable or object code is made by offering
 | 
			
		||||
access to copy from a designated place, then offering equivalent
 | 
			
		||||
access to copy the source code from the same place counts as
 | 
			
		||||
distribution of the source code, even though third parties are not
 | 
			
		||||
compelled to copy the source along with the object code.
 | 
			
		||||
 | 
			
		||||
  4. You may not copy, modify, sublicense, or distribute the Program
 | 
			
		||||
except as expressly provided under this License.  Any attempt
 | 
			
		||||
otherwise to copy, modify, sublicense or distribute the Program is
 | 
			
		||||
void, and will automatically terminate your rights under this License.
 | 
			
		||||
However, parties who have received copies, or rights, from you under
 | 
			
		||||
this License will not have their licenses terminated so long as such
 | 
			
		||||
parties remain in full compliance.
 | 
			
		||||
 | 
			
		||||
  5. You are not required to accept this License, since you have not
 | 
			
		||||
signed it.  However, nothing else grants you permission to modify or
 | 
			
		||||
distribute the Program or its derivative works.  These actions are
 | 
			
		||||
prohibited by law if you do not accept this License.  Therefore, by
 | 
			
		||||
modifying or distributing the Program (or any work based on the
 | 
			
		||||
Program), you indicate your acceptance of this License to do so, and
 | 
			
		||||
all its terms and conditions for copying, distributing or modifying
 | 
			
		||||
the Program or works based on it.
 | 
			
		||||
 | 
			
		||||
  6. Each time you redistribute the Program (or any work based on the
 | 
			
		||||
Program), the recipient automatically receives a license from the
 | 
			
		||||
original licensor to copy, distribute or modify the Program subject to
 | 
			
		||||
these terms and conditions.  You may not impose any further
 | 
			
		||||
restrictions on the recipients' exercise of the rights granted herein.
 | 
			
		||||
You are not responsible for enforcing compliance by third parties to
 | 
			
		||||
this License.
 | 
			
		||||
 | 
			
		||||
  7. If, as a consequence of a court judgment or allegation of patent
 | 
			
		||||
infringement or for any other reason (not limited to patent issues),
 | 
			
		||||
conditions are imposed on you (whether by court order, agreement or
 | 
			
		||||
otherwise) that contradict the conditions of this License, they do not
 | 
			
		||||
excuse you from the conditions of this License.  If you cannot
 | 
			
		||||
distribute so as to satisfy simultaneously your obligations under this
 | 
			
		||||
License and any other pertinent obligations, then as a consequence you
 | 
			
		||||
may not distribute the Program at all.  For example, if a patent
 | 
			
		||||
license would not permit royalty-free redistribution of the Program by
 | 
			
		||||
all those who receive copies directly or indirectly through you, then
 | 
			
		||||
the only way you could satisfy both it and this License would be to
 | 
			
		||||
refrain entirely from distribution of the Program.
 | 
			
		||||
 | 
			
		||||
If any portion of this section is held invalid or unenforceable under
 | 
			
		||||
any particular circumstance, the balance of the section is intended to
 | 
			
		||||
apply and the section as a whole is intended to apply in other
 | 
			
		||||
circumstances.
 | 
			
		||||
 | 
			
		||||
It is not the purpose of this section to induce you to infringe any
 | 
			
		||||
patents or other property right claims or to contest validity of any
 | 
			
		||||
such claims; this section has the sole purpose of protecting the
 | 
			
		||||
integrity of the free software distribution system, which is
 | 
			
		||||
implemented by public license practices.  Many people have made
 | 
			
		||||
generous contributions to the wide range of software distributed
 | 
			
		||||
through that system in reliance on consistent application of that
 | 
			
		||||
system; it is up to the author/donor to decide if he or she is willing
 | 
			
		||||
to distribute software through any other system and a licensee cannot
 | 
			
		||||
impose that choice.
 | 
			
		||||
 | 
			
		||||
This section is intended to make thoroughly clear what is believed to
 | 
			
		||||
be a consequence of the rest of this License.
 | 
			
		||||
 | 
			
		||||
  8. If the distribution and/or use of the Program is restricted in
 | 
			
		||||
certain countries either by patents or by copyrighted interfaces, the
 | 
			
		||||
original copyright holder who places the Program under this License
 | 
			
		||||
may add an explicit geographical distribution limitation excluding
 | 
			
		||||
those countries, so that distribution is permitted only in or among
 | 
			
		||||
countries not thus excluded.  In such case, this License incorporates
 | 
			
		||||
the limitation as if written in the body of this License.
 | 
			
		||||
 | 
			
		||||
  9. The Free Software Foundation may publish revised and/or new versions
 | 
			
		||||
of the General Public License from time to time.  Such new versions will
 | 
			
		||||
be similar in spirit to the present version, but may differ in detail to
 | 
			
		||||
address new problems or concerns.
 | 
			
		||||
 | 
			
		||||
Each version is given a distinguishing version number.  If the Program
 | 
			
		||||
specifies a version number of this License which applies to it and "any
 | 
			
		||||
later version", you have the option of following the terms and conditions
 | 
			
		||||
either of that version or of any later version published by the Free
 | 
			
		||||
Software Foundation.  If the Program does not specify a version number of
 | 
			
		||||
this License, you may choose any version ever published by the Free Software
 | 
			
		||||
Foundation.
 | 
			
		||||
 | 
			
		||||
  10. If you wish to incorporate parts of the Program into other free
 | 
			
		||||
programs whose distribution conditions are different, write to the author
 | 
			
		||||
to ask for permission.  For software which is copyrighted by the Free
 | 
			
		||||
Software Foundation, write to the Free Software Foundation; we sometimes
 | 
			
		||||
make exceptions for this.  Our decision will be guided by the two goals
 | 
			
		||||
of preserving the free status of all derivatives of our free software and
 | 
			
		||||
of promoting the sharing and reuse of software generally.
 | 
			
		||||
 | 
			
		||||
                            NO WARRANTY
 | 
			
		||||
 | 
			
		||||
  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
 | 
			
		||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
 | 
			
		||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
 | 
			
		||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
 | 
			
		||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 | 
			
		||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
 | 
			
		||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
 | 
			
		||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
 | 
			
		||||
REPAIR OR CORRECTION.
 | 
			
		||||
 | 
			
		||||
  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
 | 
			
		||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
 | 
			
		||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
 | 
			
		||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
 | 
			
		||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
 | 
			
		||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
 | 
			
		||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
 | 
			
		||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
 | 
			
		||||
POSSIBILITY OF SUCH DAMAGES.
 | 
			
		||||
 | 
			
		||||
                     END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
            How to Apply These Terms to Your New Programs
 | 
			
		||||
 | 
			
		||||
  If you develop a new program, and you want it to be of the greatest
 | 
			
		||||
possible use to the public, the best way to achieve this is to make it
 | 
			
		||||
free software which everyone can redistribute and change under these terms.
 | 
			
		||||
 | 
			
		||||
  To do so, attach the following notices to the program.  It is safest
 | 
			
		||||
to attach them to the start of each source file to most effectively
 | 
			
		||||
convey the exclusion of warranty; and each file should have at least
 | 
			
		||||
the "copyright" line and a pointer to where the full notice is found.
 | 
			
		||||
 | 
			
		||||
    <one line to give the program's name and a brief idea of what it does.>
 | 
			
		||||
    Copyright (C) <year>  <name of author>
 | 
			
		||||
 | 
			
		||||
    This program is free software; you can redistribute it and/or modify
 | 
			
		||||
    it under the terms of the GNU General Public License as published by
 | 
			
		||||
    the Free Software Foundation; either version 2 of the License, or
 | 
			
		||||
    (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
    This program is distributed in the hope that it will be useful,
 | 
			
		||||
    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
    GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
    You should have received a copy of the GNU General Public License along
 | 
			
		||||
    with this program; if not, write to the Free Software Foundation, Inc.,
 | 
			
		||||
    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 | 
			
		||||
 | 
			
		||||
Also add information on how to contact you by electronic and paper mail.
 | 
			
		||||
 | 
			
		||||
If the program is interactive, make it output a short notice like this
 | 
			
		||||
when it starts in an interactive mode:
 | 
			
		||||
 | 
			
		||||
    Gnomovision version 69, Copyright (C) year name of author
 | 
			
		||||
    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
 | 
			
		||||
    This is free software, and you are welcome to redistribute it
 | 
			
		||||
    under certain conditions; type `show c' for details.
 | 
			
		||||
 | 
			
		||||
The hypothetical commands `show w' and `show c' should show the appropriate
 | 
			
		||||
parts of the General Public License.  Of course, the commands you use may
 | 
			
		||||
be called something other than `show w' and `show c'; they could even be
 | 
			
		||||
mouse-clicks or menu items--whatever suits your program.
 | 
			
		||||
 | 
			
		||||
You should also get your employer (if you work as a programmer) or your
 | 
			
		||||
school, if any, to sign a "copyright disclaimer" for the program, if
 | 
			
		||||
necessary.  Here is a sample; alter the names:
 | 
			
		||||
 | 
			
		||||
  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
 | 
			
		||||
  `Gnomovision' (which makes passes at compilers) written by James Hacker.
 | 
			
		||||
 | 
			
		||||
  <signature of Ty Coon>, 1 April 1989
 | 
			
		||||
  Ty Coon, President of Vice
 | 
			
		||||
 | 
			
		||||
This General Public License does not permit incorporating your program into
 | 
			
		||||
proprietary programs.  If your program is a subroutine library, you may
 | 
			
		||||
consider it more useful to permit linking proprietary applications with the
 | 
			
		||||
library.  If this is what you want to do, use the GNU Lesser General
 | 
			
		||||
Public License instead of this License.
 | 
			
		||||
							
								
								
									
										502
									
								
								COPYING.LESSER
									
									
									
									
									
								
							
							
						
						
									
										502
									
								
								COPYING.LESSER
									
									
									
									
									
								
							@@ -1,502 +0,0 @@
 | 
			
		||||
                  GNU LESSER GENERAL PUBLIC LICENSE
 | 
			
		||||
                       Version 2.1, February 1999
 | 
			
		||||
 | 
			
		||||
 Copyright (C) 1991, 1999 Free Software Foundation, Inc.
 | 
			
		||||
 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 | 
			
		||||
 Everyone is permitted to copy and distribute verbatim copies
 | 
			
		||||
 of this license document, but changing it is not allowed.
 | 
			
		||||
 | 
			
		||||
[This is the first released version of the Lesser GPL.  It also counts
 | 
			
		||||
 as the successor of the GNU Library Public License, version 2, hence
 | 
			
		||||
 the version number 2.1.]
 | 
			
		||||
 | 
			
		||||
                            Preamble
 | 
			
		||||
 | 
			
		||||
  The licenses for most software are designed to take away your
 | 
			
		||||
freedom to share and change it.  By contrast, the GNU General Public
 | 
			
		||||
Licenses are intended to guarantee your freedom to share and change
 | 
			
		||||
free software--to make sure the software is free for all its users.
 | 
			
		||||
 | 
			
		||||
  This license, the Lesser General Public License, applies to some
 | 
			
		||||
specially designated software packages--typically libraries--of the
 | 
			
		||||
Free Software Foundation and other authors who decide to use it.  You
 | 
			
		||||
can use it too, but we suggest you first think carefully about whether
 | 
			
		||||
this license or the ordinary General Public License is the better
 | 
			
		||||
strategy to use in any particular case, based on the explanations below.
 | 
			
		||||
 | 
			
		||||
  When we speak of free software, we are referring to freedom of use,
 | 
			
		||||
not price.  Our General Public Licenses are designed to make sure that
 | 
			
		||||
you have the freedom to distribute copies of free software (and charge
 | 
			
		||||
for this service if you wish); that you receive source code or can get
 | 
			
		||||
it if you want it; that you can change the software and use pieces of
 | 
			
		||||
it in new free programs; and that you are informed that you can do
 | 
			
		||||
these things.
 | 
			
		||||
 | 
			
		||||
  To protect your rights, we need to make restrictions that forbid
 | 
			
		||||
distributors to deny you these rights or to ask you to surrender these
 | 
			
		||||
rights.  These restrictions translate to certain responsibilities for
 | 
			
		||||
you if you distribute copies of the library or if you modify it.
 | 
			
		||||
 | 
			
		||||
  For example, if you distribute copies of the library, whether gratis
 | 
			
		||||
or for a fee, you must give the recipients all the rights that we gave
 | 
			
		||||
you.  You must make sure that they, too, receive or can get the source
 | 
			
		||||
code.  If you link other code with the library, you must provide
 | 
			
		||||
complete object files to the recipients, so that they can relink them
 | 
			
		||||
with the library after making changes to the library and recompiling
 | 
			
		||||
it.  And you must show them these terms so they know their rights.
 | 
			
		||||
 | 
			
		||||
  We protect your rights with a two-step method: (1) we copyright the
 | 
			
		||||
library, and (2) we offer you this license, which gives you legal
 | 
			
		||||
permission to copy, distribute and/or modify the library.
 | 
			
		||||
 | 
			
		||||
  To protect each distributor, we want to make it very clear that
 | 
			
		||||
there is no warranty for the free library.  Also, if the library is
 | 
			
		||||
modified by someone else and passed on, the recipients should know
 | 
			
		||||
that what they have is not the original version, so that the original
 | 
			
		||||
author's reputation will not be affected by problems that might be
 | 
			
		||||
introduced by others.
 | 
			
		||||
 | 
			
		||||
  Finally, software patents pose a constant threat to the existence of
 | 
			
		||||
any free program.  We wish to make sure that a company cannot
 | 
			
		||||
effectively restrict the users of a free program by obtaining a
 | 
			
		||||
restrictive license from a patent holder.  Therefore, we insist that
 | 
			
		||||
any patent license obtained for a version of the library must be
 | 
			
		||||
consistent with the full freedom of use specified in this license.
 | 
			
		||||
 | 
			
		||||
  Most GNU software, including some libraries, is covered by the
 | 
			
		||||
ordinary GNU General Public License.  This license, the GNU Lesser
 | 
			
		||||
General Public License, applies to certain designated libraries, and
 | 
			
		||||
is quite different from the ordinary General Public License.  We use
 | 
			
		||||
this license for certain libraries in order to permit linking those
 | 
			
		||||
libraries into non-free programs.
 | 
			
		||||
 | 
			
		||||
  When a program is linked with a library, whether statically or using
 | 
			
		||||
a shared library, the combination of the two is legally speaking a
 | 
			
		||||
combined work, a derivative of the original library.  The ordinary
 | 
			
		||||
General Public License therefore permits such linking only if the
 | 
			
		||||
entire combination fits its criteria of freedom.  The Lesser General
 | 
			
		||||
Public License permits more lax criteria for linking other code with
 | 
			
		||||
the library.
 | 
			
		||||
 | 
			
		||||
  We call this license the "Lesser" General Public License because it
 | 
			
		||||
does Less to protect the user's freedom than the ordinary General
 | 
			
		||||
Public License.  It also provides other free software developers Less
 | 
			
		||||
of an advantage over competing non-free programs.  These disadvantages
 | 
			
		||||
are the reason we use the ordinary General Public License for many
 | 
			
		||||
libraries.  However, the Lesser license provides advantages in certain
 | 
			
		||||
special circumstances.
 | 
			
		||||
 | 
			
		||||
  For example, on rare occasions, there may be a special need to
 | 
			
		||||
encourage the widest possible use of a certain library, so that it becomes
 | 
			
		||||
a de-facto standard.  To achieve this, non-free programs must be
 | 
			
		||||
allowed to use the library.  A more frequent case is that a free
 | 
			
		||||
library does the same job as widely used non-free libraries.  In this
 | 
			
		||||
case, there is little to gain by limiting the free library to free
 | 
			
		||||
software only, so we use the Lesser General Public License.
 | 
			
		||||
 | 
			
		||||
  In other cases, permission to use a particular library in non-free
 | 
			
		||||
programs enables a greater number of people to use a large body of
 | 
			
		||||
free software.  For example, permission to use the GNU C Library in
 | 
			
		||||
non-free programs enables many more people to use the whole GNU
 | 
			
		||||
operating system, as well as its variant, the GNU/Linux operating
 | 
			
		||||
system.
 | 
			
		||||
 | 
			
		||||
  Although the Lesser General Public License is Less protective of the
 | 
			
		||||
users' freedom, it does ensure that the user of a program that is
 | 
			
		||||
linked with the Library has the freedom and the wherewithal to run
 | 
			
		||||
that program using a modified version of the Library.
 | 
			
		||||
 | 
			
		||||
  The precise terms and conditions for copying, distribution and
 | 
			
		||||
modification follow.  Pay close attention to the difference between a
 | 
			
		||||
"work based on the library" and a "work that uses the library".  The
 | 
			
		||||
former contains code derived from the library, whereas the latter must
 | 
			
		||||
be combined with the library in order to run.
 | 
			
		||||
 | 
			
		||||
                  GNU LESSER GENERAL PUBLIC LICENSE
 | 
			
		||||
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 | 
			
		||||
 | 
			
		||||
  0. This License Agreement applies to any software library or other
 | 
			
		||||
program which contains a notice placed by the copyright holder or
 | 
			
		||||
other authorized party saying it may be distributed under the terms of
 | 
			
		||||
this Lesser General Public License (also called "this License").
 | 
			
		||||
Each licensee is addressed as "you".
 | 
			
		||||
 | 
			
		||||
  A "library" means a collection of software functions and/or data
 | 
			
		||||
prepared so as to be conveniently linked with application programs
 | 
			
		||||
(which use some of those functions and data) to form executables.
 | 
			
		||||
 | 
			
		||||
  The "Library", below, refers to any such software library or work
 | 
			
		||||
which has been distributed under these terms.  A "work based on the
 | 
			
		||||
Library" means either the Library or any derivative work under
 | 
			
		||||
copyright law: that is to say, a work containing the Library or a
 | 
			
		||||
portion of it, either verbatim or with modifications and/or translated
 | 
			
		||||
straightforwardly into another language.  (Hereinafter, translation is
 | 
			
		||||
included without limitation in the term "modification".)
 | 
			
		||||
 | 
			
		||||
  "Source code" for a work means the preferred form of the work for
 | 
			
		||||
making modifications to it.  For a library, complete source code means
 | 
			
		||||
all the source code for all modules it contains, plus any associated
 | 
			
		||||
interface definition files, plus the scripts used to control compilation
 | 
			
		||||
and installation of the library.
 | 
			
		||||
 | 
			
		||||
  Activities other than copying, distribution and modification are not
 | 
			
		||||
covered by this License; they are outside its scope.  The act of
 | 
			
		||||
running a program using the Library is not restricted, and output from
 | 
			
		||||
such a program is covered only if its contents constitute a work based
 | 
			
		||||
on the Library (independent of the use of the Library in a tool for
 | 
			
		||||
writing it).  Whether that is true depends on what the Library does
 | 
			
		||||
and what the program that uses the Library does.
 | 
			
		||||
 | 
			
		||||
  1. You may copy and distribute verbatim copies of the Library's
 | 
			
		||||
complete source code as you receive it, in any medium, provided that
 | 
			
		||||
you conspicuously and appropriately publish on each copy an
 | 
			
		||||
appropriate copyright notice and disclaimer of warranty; keep intact
 | 
			
		||||
all the notices that refer to this License and to the absence of any
 | 
			
		||||
warranty; and distribute a copy of this License along with the
 | 
			
		||||
Library.
 | 
			
		||||
 | 
			
		||||
  You may charge a fee for the physical act of transferring a copy,
 | 
			
		||||
and you may at your option offer warranty protection in exchange for a
 | 
			
		||||
fee.
 | 
			
		||||
 | 
			
		||||
  2. You may modify your copy or copies of the Library or any portion
 | 
			
		||||
of it, thus forming a work based on the Library, and copy and
 | 
			
		||||
distribute such modifications or work under the terms of Section 1
 | 
			
		||||
above, provided that you also meet all of these conditions:
 | 
			
		||||
 | 
			
		||||
    a) The modified work must itself be a software library.
 | 
			
		||||
 | 
			
		||||
    b) You must cause the files modified to carry prominent notices
 | 
			
		||||
    stating that you changed the files and the date of any change.
 | 
			
		||||
 | 
			
		||||
    c) You must cause the whole of the work to be licensed at no
 | 
			
		||||
    charge to all third parties under the terms of this License.
 | 
			
		||||
 | 
			
		||||
    d) If a facility in the modified Library refers to a function or a
 | 
			
		||||
    table of data to be supplied by an application program that uses
 | 
			
		||||
    the facility, other than as an argument passed when the facility
 | 
			
		||||
    is invoked, then you must make a good faith effort to ensure that,
 | 
			
		||||
    in the event an application does not supply such function or
 | 
			
		||||
    table, the facility still operates, and performs whatever part of
 | 
			
		||||
    its purpose remains meaningful.
 | 
			
		||||
 | 
			
		||||
    (For example, a function in a library to compute square roots has
 | 
			
		||||
    a purpose that is entirely well-defined independent of the
 | 
			
		||||
    application.  Therefore, Subsection 2d requires that any
 | 
			
		||||
    application-supplied function or table used by this function must
 | 
			
		||||
    be optional: if the application does not supply it, the square
 | 
			
		||||
    root function must still compute square roots.)
 | 
			
		||||
 | 
			
		||||
These requirements apply to the modified work as a whole.  If
 | 
			
		||||
identifiable sections of that work are not derived from the Library,
 | 
			
		||||
and can be reasonably considered independent and separate works in
 | 
			
		||||
themselves, then this License, and its terms, do not apply to those
 | 
			
		||||
sections when you distribute them as separate works.  But when you
 | 
			
		||||
distribute the same sections as part of a whole which is a work based
 | 
			
		||||
on the Library, the distribution of the whole must be on the terms of
 | 
			
		||||
this License, whose permissions for other licensees extend to the
 | 
			
		||||
entire whole, and thus to each and every part regardless of who wrote
 | 
			
		||||
it.
 | 
			
		||||
 | 
			
		||||
Thus, it is not the intent of this section to claim rights or contest
 | 
			
		||||
your rights to work written entirely by you; rather, the intent is to
 | 
			
		||||
exercise the right to control the distribution of derivative or
 | 
			
		||||
collective works based on the Library.
 | 
			
		||||
 | 
			
		||||
In addition, mere aggregation of another work not based on the Library
 | 
			
		||||
with the Library (or with a work based on the Library) on a volume of
 | 
			
		||||
a storage or distribution medium does not bring the other work under
 | 
			
		||||
the scope of this License.
 | 
			
		||||
 | 
			
		||||
  3. You may opt to apply the terms of the ordinary GNU General Public
 | 
			
		||||
License instead of this License to a given copy of the Library.  To do
 | 
			
		||||
this, you must alter all the notices that refer to this License, so
 | 
			
		||||
that they refer to the ordinary GNU General Public License, version 2,
 | 
			
		||||
instead of to this License.  (If a newer version than version 2 of the
 | 
			
		||||
ordinary GNU General Public License has appeared, then you can specify
 | 
			
		||||
that version instead if you wish.)  Do not make any other change in
 | 
			
		||||
these notices.
 | 
			
		||||
 | 
			
		||||
  Once this change is made in a given copy, it is irreversible for
 | 
			
		||||
that copy, so the ordinary GNU General Public License applies to all
 | 
			
		||||
subsequent copies and derivative works made from that copy.
 | 
			
		||||
 | 
			
		||||
  This option is useful when you wish to copy part of the code of
 | 
			
		||||
the Library into a program that is not a library.
 | 
			
		||||
 | 
			
		||||
  4. You may copy and distribute the Library (or a portion or
 | 
			
		||||
derivative of it, under Section 2) in object code or executable form
 | 
			
		||||
under the terms of Sections 1 and 2 above provided that you accompany
 | 
			
		||||
it with the complete corresponding machine-readable source code, which
 | 
			
		||||
must be distributed under the terms of Sections 1 and 2 above on a
 | 
			
		||||
medium customarily used for software interchange.
 | 
			
		||||
 | 
			
		||||
  If distribution of object code is made by offering access to copy
 | 
			
		||||
from a designated place, then offering equivalent access to copy the
 | 
			
		||||
source code from the same place satisfies the requirement to
 | 
			
		||||
distribute the source code, even though third parties are not
 | 
			
		||||
compelled to copy the source along with the object code.
 | 
			
		||||
 | 
			
		||||
  5. A program that contains no derivative of any portion of the
 | 
			
		||||
Library, but is designed to work with the Library by being compiled or
 | 
			
		||||
linked with it, is called a "work that uses the Library".  Such a
 | 
			
		||||
work, in isolation, is not a derivative work of the Library, and
 | 
			
		||||
therefore falls outside the scope of this License.
 | 
			
		||||
 | 
			
		||||
  However, linking a "work that uses the Library" with the Library
 | 
			
		||||
creates an executable that is a derivative of the Library (because it
 | 
			
		||||
contains portions of the Library), rather than a "work that uses the
 | 
			
		||||
library".  The executable is therefore covered by this License.
 | 
			
		||||
Section 6 states terms for distribution of such executables.
 | 
			
		||||
 | 
			
		||||
  When a "work that uses the Library" uses material from a header file
 | 
			
		||||
that is part of the Library, the object code for the work may be a
 | 
			
		||||
derivative work of the Library even though the source code is not.
 | 
			
		||||
Whether this is true is especially significant if the work can be
 | 
			
		||||
linked without the Library, or if the work is itself a library.  The
 | 
			
		||||
threshold for this to be true is not precisely defined by law.
 | 
			
		||||
 | 
			
		||||
  If such an object file uses only numerical parameters, data
 | 
			
		||||
structure layouts and accessors, and small macros and small inline
 | 
			
		||||
functions (ten lines or less in length), then the use of the object
 | 
			
		||||
file is unrestricted, regardless of whether it is legally a derivative
 | 
			
		||||
work.  (Executables containing this object code plus portions of the
 | 
			
		||||
Library will still fall under Section 6.)
 | 
			
		||||
 | 
			
		||||
  Otherwise, if the work is a derivative of the Library, you may
 | 
			
		||||
distribute the object code for the work under the terms of Section 6.
 | 
			
		||||
Any executables containing that work also fall under Section 6,
 | 
			
		||||
whether or not they are linked directly with the Library itself.
 | 
			
		||||
 | 
			
		||||
  6. As an exception to the Sections above, you may also combine or
 | 
			
		||||
link a "work that uses the Library" with the Library to produce a
 | 
			
		||||
work containing portions of the Library, and distribute that work
 | 
			
		||||
under terms of your choice, provided that the terms permit
 | 
			
		||||
modification of the work for the customer's own use and reverse
 | 
			
		||||
engineering for debugging such modifications.
 | 
			
		||||
 | 
			
		||||
  You must give prominent notice with each copy of the work that the
 | 
			
		||||
Library is used in it and that the Library and its use are covered by
 | 
			
		||||
this License.  You must supply a copy of this License.  If the work
 | 
			
		||||
during execution displays copyright notices, you must include the
 | 
			
		||||
copyright notice for the Library among them, as well as a reference
 | 
			
		||||
directing the user to the copy of this License.  Also, you must do one
 | 
			
		||||
of these things:
 | 
			
		||||
 | 
			
		||||
    a) Accompany the work with the complete corresponding
 | 
			
		||||
    machine-readable source code for the Library including whatever
 | 
			
		||||
    changes were used in the work (which must be distributed under
 | 
			
		||||
    Sections 1 and 2 above); and, if the work is an executable linked
 | 
			
		||||
    with the Library, with the complete machine-readable "work that
 | 
			
		||||
    uses the Library", as object code and/or source code, so that the
 | 
			
		||||
    user can modify the Library and then relink to produce a modified
 | 
			
		||||
    executable containing the modified Library.  (It is understood
 | 
			
		||||
    that the user who changes the contents of definitions files in the
 | 
			
		||||
    Library will not necessarily be able to recompile the application
 | 
			
		||||
    to use the modified definitions.)
 | 
			
		||||
 | 
			
		||||
    b) Use a suitable shared library mechanism for linking with the
 | 
			
		||||
    Library.  A suitable mechanism is one that (1) uses at run time a
 | 
			
		||||
    copy of the library already present on the user's computer system,
 | 
			
		||||
    rather than copying library functions into the executable, and (2)
 | 
			
		||||
    will operate properly with a modified version of the library, if
 | 
			
		||||
    the user installs one, as long as the modified version is
 | 
			
		||||
    interface-compatible with the version that the work was made with.
 | 
			
		||||
 | 
			
		||||
    c) Accompany the work with a written offer, valid for at
 | 
			
		||||
    least three years, to give the same user the materials
 | 
			
		||||
    specified in Subsection 6a, above, for a charge no more
 | 
			
		||||
    than the cost of performing this distribution.
 | 
			
		||||
 | 
			
		||||
    d) If distribution of the work is made by offering access to copy
 | 
			
		||||
    from a designated place, offer equivalent access to copy the above
 | 
			
		||||
    specified materials from the same place.
 | 
			
		||||
 | 
			
		||||
    e) Verify that the user has already received a copy of these
 | 
			
		||||
    materials or that you have already sent this user a copy.
 | 
			
		||||
 | 
			
		||||
  For an executable, the required form of the "work that uses the
 | 
			
		||||
Library" must include any data and utility programs needed for
 | 
			
		||||
reproducing the executable from it.  However, as a special exception,
 | 
			
		||||
the materials to be distributed need not include anything that is
 | 
			
		||||
normally distributed (in either source or binary form) with the major
 | 
			
		||||
components (compiler, kernel, and so on) of the operating system on
 | 
			
		||||
which the executable runs, unless that component itself accompanies
 | 
			
		||||
the executable.
 | 
			
		||||
 | 
			
		||||
  It may happen that this requirement contradicts the license
 | 
			
		||||
restrictions of other proprietary libraries that do not normally
 | 
			
		||||
accompany the operating system.  Such a contradiction means you cannot
 | 
			
		||||
use both them and the Library together in an executable that you
 | 
			
		||||
distribute.
 | 
			
		||||
 | 
			
		||||
  7. You may place library facilities that are a work based on the
 | 
			
		||||
Library side-by-side in a single library together with other library
 | 
			
		||||
facilities not covered by this License, and distribute such a combined
 | 
			
		||||
library, provided that the separate distribution of the work based on
 | 
			
		||||
the Library and of the other library facilities is otherwise
 | 
			
		||||
permitted, and provided that you do these two things:
 | 
			
		||||
 | 
			
		||||
    a) Accompany the combined library with a copy of the same work
 | 
			
		||||
    based on the Library, uncombined with any other library
 | 
			
		||||
    facilities.  This must be distributed under the terms of the
 | 
			
		||||
    Sections above.
 | 
			
		||||
 | 
			
		||||
    b) Give prominent notice with the combined library of the fact
 | 
			
		||||
    that part of it is a work based on the Library, and explaining
 | 
			
		||||
    where to find the accompanying uncombined form of the same work.
 | 
			
		||||
 | 
			
		||||
  8. You may not copy, modify, sublicense, link with, or distribute
 | 
			
		||||
the Library except as expressly provided under this License.  Any
 | 
			
		||||
attempt otherwise to copy, modify, sublicense, link with, or
 | 
			
		||||
distribute the Library is void, and will automatically terminate your
 | 
			
		||||
rights under this License.  However, parties who have received copies,
 | 
			
		||||
or rights, from you under this License will not have their licenses
 | 
			
		||||
terminated so long as such parties remain in full compliance.
 | 
			
		||||
 | 
			
		||||
  9. You are not required to accept this License, since you have not
 | 
			
		||||
signed it.  However, nothing else grants you permission to modify or
 | 
			
		||||
distribute the Library or its derivative works.  These actions are
 | 
			
		||||
prohibited by law if you do not accept this License.  Therefore, by
 | 
			
		||||
modifying or distributing the Library (or any work based on the
 | 
			
		||||
Library), you indicate your acceptance of this License to do so, and
 | 
			
		||||
all its terms and conditions for copying, distributing or modifying
 | 
			
		||||
the Library or works based on it.
 | 
			
		||||
 | 
			
		||||
  10. Each time you redistribute the Library (or any work based on the
 | 
			
		||||
Library), the recipient automatically receives a license from the
 | 
			
		||||
original licensor to copy, distribute, link with or modify the Library
 | 
			
		||||
subject to these terms and conditions.  You may not impose any further
 | 
			
		||||
restrictions on the recipients' exercise of the rights granted herein.
 | 
			
		||||
You are not responsible for enforcing compliance by third parties with
 | 
			
		||||
this License.
 | 
			
		||||
 | 
			
		||||
  11. If, as a consequence of a court judgment or allegation of patent
 | 
			
		||||
infringement or for any other reason (not limited to patent issues),
 | 
			
		||||
conditions are imposed on you (whether by court order, agreement or
 | 
			
		||||
otherwise) that contradict the conditions of this License, they do not
 | 
			
		||||
excuse you from the conditions of this License.  If you cannot
 | 
			
		||||
distribute so as to satisfy simultaneously your obligations under this
 | 
			
		||||
License and any other pertinent obligations, then as a consequence you
 | 
			
		||||
may not distribute the Library at all.  For example, if a patent
 | 
			
		||||
license would not permit royalty-free redistribution of the Library by
 | 
			
		||||
all those who receive copies directly or indirectly through you, then
 | 
			
		||||
the only way you could satisfy both it and this License would be to
 | 
			
		||||
refrain entirely from distribution of the Library.
 | 
			
		||||
 | 
			
		||||
If any portion of this section is held invalid or unenforceable under any
 | 
			
		||||
particular circumstance, the balance of the section is intended to apply,
 | 
			
		||||
and the section as a whole is intended to apply in other circumstances.
 | 
			
		||||
 | 
			
		||||
It is not the purpose of this section to induce you to infringe any
 | 
			
		||||
patents or other property right claims or to contest validity of any
 | 
			
		||||
such claims; this section has the sole purpose of protecting the
 | 
			
		||||
integrity of the free software distribution system which is
 | 
			
		||||
implemented by public license practices.  Many people have made
 | 
			
		||||
generous contributions to the wide range of software distributed
 | 
			
		||||
through that system in reliance on consistent application of that
 | 
			
		||||
system; it is up to the author/donor to decide if he or she is willing
 | 
			
		||||
to distribute software through any other system and a licensee cannot
 | 
			
		||||
impose that choice.
 | 
			
		||||
 | 
			
		||||
This section is intended to make thoroughly clear what is believed to
 | 
			
		||||
be a consequence of the rest of this License.
 | 
			
		||||
 | 
			
		||||
  12. If the distribution and/or use of the Library is restricted in
 | 
			
		||||
certain countries either by patents or by copyrighted interfaces, the
 | 
			
		||||
original copyright holder who places the Library under this License may add
 | 
			
		||||
an explicit geographical distribution limitation excluding those countries,
 | 
			
		||||
so that distribution is permitted only in or among countries not thus
 | 
			
		||||
excluded.  In such case, this License incorporates the limitation as if
 | 
			
		||||
written in the body of this License.
 | 
			
		||||
 | 
			
		||||
  13. The Free Software Foundation may publish revised and/or new
 | 
			
		||||
versions of the Lesser General Public License from time to time.
 | 
			
		||||
Such new versions will be similar in spirit to the present version,
 | 
			
		||||
but may differ in detail to address new problems or concerns.
 | 
			
		||||
 | 
			
		||||
Each version is given a distinguishing version number.  If the Library
 | 
			
		||||
specifies a version number of this License which applies to it and
 | 
			
		||||
"any later version", you have the option of following the terms and
 | 
			
		||||
conditions either of that version or of any later version published by
 | 
			
		||||
the Free Software Foundation.  If the Library does not specify a
 | 
			
		||||
license version number, you may choose any version ever published by
 | 
			
		||||
the Free Software Foundation.
 | 
			
		||||
 | 
			
		||||
  14. If you wish to incorporate parts of the Library into other free
 | 
			
		||||
programs whose distribution conditions are incompatible with these,
 | 
			
		||||
write to the author to ask for permission.  For software which is
 | 
			
		||||
copyrighted by the Free Software Foundation, write to the Free
 | 
			
		||||
Software Foundation; we sometimes make exceptions for this.  Our
 | 
			
		||||
decision will be guided by the two goals of preserving the free status
 | 
			
		||||
of all derivatives of our free software and of promoting the sharing
 | 
			
		||||
and reuse of software generally.
 | 
			
		||||
 | 
			
		||||
                            NO WARRANTY
 | 
			
		||||
 | 
			
		||||
  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
 | 
			
		||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
 | 
			
		||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
 | 
			
		||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
 | 
			
		||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 | 
			
		||||
PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
 | 
			
		||||
LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
 | 
			
		||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
 | 
			
		||||
 | 
			
		||||
  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
 | 
			
		||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
 | 
			
		||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
 | 
			
		||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
 | 
			
		||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
 | 
			
		||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
 | 
			
		||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
 | 
			
		||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
 | 
			
		||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
 | 
			
		||||
DAMAGES.
 | 
			
		||||
 | 
			
		||||
                     END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
           How to Apply These Terms to Your New Libraries
 | 
			
		||||
 | 
			
		||||
  If you develop a new library, and you want it to be of the greatest
 | 
			
		||||
possible use to the public, we recommend making it free software that
 | 
			
		||||
everyone can redistribute and change.  You can do so by permitting
 | 
			
		||||
redistribution under these terms (or, alternatively, under the terms of the
 | 
			
		||||
ordinary General Public License).
 | 
			
		||||
 | 
			
		||||
  To apply these terms, attach the following notices to the library.  It is
 | 
			
		||||
safest to attach them to the start of each source file to most effectively
 | 
			
		||||
convey the exclusion of warranty; and each file should have at least the
 | 
			
		||||
"copyright" line and a pointer to where the full notice is found.
 | 
			
		||||
 | 
			
		||||
    <one line to give the library's name and a brief idea of what it does.>
 | 
			
		||||
    Copyright (C) <year>  <name of author>
 | 
			
		||||
 | 
			
		||||
    This library is free software; you can redistribute it and/or
 | 
			
		||||
    modify it under the terms of the GNU Lesser General Public
 | 
			
		||||
    License as published by the Free Software Foundation; either
 | 
			
		||||
    version 2.1 of the License, or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
    This library is distributed in the hope that it will be useful,
 | 
			
		||||
    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
    Lesser General Public License for more details.
 | 
			
		||||
 | 
			
		||||
    You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
    License along with this library; if not, write to the Free Software
 | 
			
		||||
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 | 
			
		||||
 | 
			
		||||
Also add information on how to contact you by electronic and paper mail.
 | 
			
		||||
 | 
			
		||||
You should also get your employer (if you work as a programmer) or your
 | 
			
		||||
school, if any, to sign a "copyright disclaimer" for the library, if
 | 
			
		||||
necessary.  Here is a sample; alter the names:
 | 
			
		||||
 | 
			
		||||
  Yoyodyne, Inc., hereby disclaims all copyright interest in the
 | 
			
		||||
  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
 | 
			
		||||
 | 
			
		||||
  <signature of Ty Coon>, 1 April 1990
 | 
			
		||||
  Ty Coon, President of Vice
 | 
			
		||||
 | 
			
		||||
That's all there is to it!
 | 
			
		||||
							
								
								
									
										508
									
								
								COPYING.LIB
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										508
									
								
								COPYING.LIB
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,508 @@
 | 
			
		||||
 | 
			
		||||
                  GNU LESSER GENERAL PUBLIC LICENSE
 | 
			
		||||
                       Version 2.1, February 1999
 | 
			
		||||
 | 
			
		||||
 Copyright (C) 1991, 1999 Free Software Foundation, Inc.
 | 
			
		||||
     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 | 
			
		||||
 Everyone is permitted to copy and distribute verbatim copies
 | 
			
		||||
 of this license document, but changing it is not allowed.
 | 
			
		||||
 | 
			
		||||
[This is the first released version of the Lesser GPL.  It also counts
 | 
			
		||||
 as the successor of the GNU Library Public License, version 2, hence
 | 
			
		||||
 the version number 2.1.]
 | 
			
		||||
 | 
			
		||||
                            Preamble
 | 
			
		||||
 | 
			
		||||
  The licenses for most software are designed to take away your
 | 
			
		||||
freedom to share and change it.  By contrast, the GNU General Public
 | 
			
		||||
Licenses are intended to guarantee your freedom to share and change
 | 
			
		||||
free software--to make sure the software is free for all its users.
 | 
			
		||||
 | 
			
		||||
  This license, the Lesser General Public License, applies to some
 | 
			
		||||
specially designated software packages--typically libraries--of the
 | 
			
		||||
Free Software Foundation and other authors who decide to use it.  You
 | 
			
		||||
can use it too, but we suggest you first think carefully about whether
 | 
			
		||||
this license or the ordinary General Public License is the better
 | 
			
		||||
strategy to use in any particular case, based on the explanations
 | 
			
		||||
below.
 | 
			
		||||
 | 
			
		||||
  When we speak of free software, we are referring to freedom of use,
 | 
			
		||||
not price.  Our General Public Licenses are designed to make sure that
 | 
			
		||||
you have the freedom to distribute copies of free software (and charge
 | 
			
		||||
for this service if you wish); that you receive source code or can get
 | 
			
		||||
it if you want it; that you can change the software and use pieces of
 | 
			
		||||
it in new free programs; and that you are informed that you can do
 | 
			
		||||
these things.
 | 
			
		||||
 | 
			
		||||
  To protect your rights, we need to make restrictions that forbid
 | 
			
		||||
distributors to deny you these rights or to ask you to surrender these
 | 
			
		||||
rights.  These restrictions translate to certain responsibilities for
 | 
			
		||||
you if you distribute copies of the library or if you modify it.
 | 
			
		||||
 | 
			
		||||
  For example, if you distribute copies of the library, whether gratis
 | 
			
		||||
or for a fee, you must give the recipients all the rights that we gave
 | 
			
		||||
you.  You must make sure that they, too, receive or can get the source
 | 
			
		||||
code.  If you link other code with the library, you must provide
 | 
			
		||||
complete object files to the recipients, so that they can relink them
 | 
			
		||||
with the library after making changes to the library and recompiling
 | 
			
		||||
it.  And you must show them these terms so they know their rights.
 | 
			
		||||
 | 
			
		||||
  We protect your rights with a two-step method: (1) we copyright the
 | 
			
		||||
library, and (2) we offer you this license, which gives you legal
 | 
			
		||||
permission to copy, distribute and/or modify the library.
 | 
			
		||||
 | 
			
		||||
  To protect each distributor, we want to make it very clear that
 | 
			
		||||
there is no warranty for the free library.  Also, if the library is
 | 
			
		||||
modified by someone else and passed on, the recipients should know
 | 
			
		||||
that what they have is not the original version, so that the original
 | 
			
		||||
author's reputation will not be affected by problems that might be
 | 
			
		||||
introduced by others.
 | 
			
		||||
^L
 | 
			
		||||
  Finally, software patents pose a constant threat to the existence of
 | 
			
		||||
any free program.  We wish to make sure that a company cannot
 | 
			
		||||
effectively restrict the users of a free program by obtaining a
 | 
			
		||||
restrictive license from a patent holder.  Therefore, we insist that
 | 
			
		||||
any patent license obtained for a version of the library must be
 | 
			
		||||
consistent with the full freedom of use specified in this license.
 | 
			
		||||
 | 
			
		||||
  Most GNU software, including some libraries, is covered by the
 | 
			
		||||
ordinary GNU General Public License.  This license, the GNU Lesser
 | 
			
		||||
General Public License, applies to certain designated libraries, and
 | 
			
		||||
is quite different from the ordinary General Public License.  We use
 | 
			
		||||
this license for certain libraries in order to permit linking those
 | 
			
		||||
libraries into non-free programs.
 | 
			
		||||
 | 
			
		||||
  When a program is linked with a library, whether statically or using
 | 
			
		||||
a shared library, the combination of the two is legally speaking a
 | 
			
		||||
combined work, a derivative of the original library.  The ordinary
 | 
			
		||||
General Public License therefore permits such linking only if the
 | 
			
		||||
entire combination fits its criteria of freedom.  The Lesser General
 | 
			
		||||
Public License permits more lax criteria for linking other code with
 | 
			
		||||
the library.
 | 
			
		||||
 | 
			
		||||
  We call this license the "Lesser" General Public License because it
 | 
			
		||||
does Less to protect the user's freedom than the ordinary General
 | 
			
		||||
Public License.  It also provides other free software developers Less
 | 
			
		||||
of an advantage over competing non-free programs.  These disadvantages
 | 
			
		||||
are the reason we use the ordinary General Public License for many
 | 
			
		||||
libraries.  However, the Lesser license provides advantages in certain
 | 
			
		||||
special circumstances.
 | 
			
		||||
 | 
			
		||||
  For example, on rare occasions, there may be a special need to
 | 
			
		||||
encourage the widest possible use of a certain library, so that it
 | 
			
		||||
becomes a de-facto standard.  To achieve this, non-free programs must
 | 
			
		||||
be allowed to use the library.  A more frequent case is that a free
 | 
			
		||||
library does the same job as widely used non-free libraries.  In this
 | 
			
		||||
case, there is little to gain by limiting the free library to free
 | 
			
		||||
software only, so we use the Lesser General Public License.
 | 
			
		||||
 | 
			
		||||
  In other cases, permission to use a particular library in non-free
 | 
			
		||||
programs enables a greater number of people to use a large body of
 | 
			
		||||
free software.  For example, permission to use the GNU C Library in
 | 
			
		||||
non-free programs enables many more people to use the whole GNU
 | 
			
		||||
operating system, as well as its variant, the GNU/Linux operating
 | 
			
		||||
system.
 | 
			
		||||
 | 
			
		||||
  Although the Lesser General Public License is Less protective of the
 | 
			
		||||
users' freedom, it does ensure that the user of a program that is
 | 
			
		||||
linked with the Library has the freedom and the wherewithal to run
 | 
			
		||||
that program using a modified version of the Library.
 | 
			
		||||
 | 
			
		||||
  The precise terms and conditions for copying, distribution and
 | 
			
		||||
modification follow.  Pay close attention to the difference between a
 | 
			
		||||
"work based on the library" and a "work that uses the library".  The
 | 
			
		||||
former contains code derived from the library, whereas the latter must
 | 
			
		||||
be combined with the library in order to run.
 | 
			
		||||
^L
 | 
			
		||||
                  GNU LESSER GENERAL PUBLIC LICENSE
 | 
			
		||||
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 | 
			
		||||
 | 
			
		||||
  0. This License Agreement applies to any software library or other
 | 
			
		||||
program which contains a notice placed by the copyright holder or
 | 
			
		||||
other authorized party saying it may be distributed under the terms of
 | 
			
		||||
this Lesser General Public License (also called "this License").
 | 
			
		||||
Each licensee is addressed as "you".
 | 
			
		||||
 | 
			
		||||
  A "library" means a collection of software functions and/or data
 | 
			
		||||
prepared so as to be conveniently linked with application programs
 | 
			
		||||
(which use some of those functions and data) to form executables.
 | 
			
		||||
 | 
			
		||||
  The "Library", below, refers to any such software library or work
 | 
			
		||||
which has been distributed under these terms.  A "work based on the
 | 
			
		||||
Library" means either the Library or any derivative work under
 | 
			
		||||
copyright law: that is to say, a work containing the Library or a
 | 
			
		||||
portion of it, either verbatim or with modifications and/or translated
 | 
			
		||||
straightforwardly into another language.  (Hereinafter, translation is
 | 
			
		||||
included without limitation in the term "modification".)
 | 
			
		||||
 | 
			
		||||
  "Source code" for a work means the preferred form of the work for
 | 
			
		||||
making modifications to it.  For a library, complete source code means
 | 
			
		||||
all the source code for all modules it contains, plus any associated
 | 
			
		||||
interface definition files, plus the scripts used to control
 | 
			
		||||
compilation and installation of the library.
 | 
			
		||||
 | 
			
		||||
  Activities other than copying, distribution and modification are not
 | 
			
		||||
covered by this License; they are outside its scope.  The act of
 | 
			
		||||
running a program using the Library is not restricted, and output from
 | 
			
		||||
such a program is covered only if its contents constitute a work based
 | 
			
		||||
on the Library (independent of the use of the Library in a tool for
 | 
			
		||||
writing it).  Whether that is true depends on what the Library does
 | 
			
		||||
and what the program that uses the Library does.
 | 
			
		||||
 | 
			
		||||
  1. You may copy and distribute verbatim copies of the Library's
 | 
			
		||||
complete source code as you receive it, in any medium, provided that
 | 
			
		||||
you conspicuously and appropriately publish on each copy an
 | 
			
		||||
appropriate copyright notice and disclaimer of warranty; keep intact
 | 
			
		||||
all the notices that refer to this License and to the absence of any
 | 
			
		||||
warranty; and distribute a copy of this License along with the
 | 
			
		||||
Library.
 | 
			
		||||
 | 
			
		||||
  You may charge a fee for the physical act of transferring a copy,
 | 
			
		||||
and you may at your option offer warranty protection in exchange for a
 | 
			
		||||
fee.
 | 
			
		||||
 | 
			
		||||
  2. You may modify your copy or copies of the Library or any portion
 | 
			
		||||
of it, thus forming a work based on the Library, and copy and
 | 
			
		||||
distribute such modifications or work under the terms of Section 1
 | 
			
		||||
above, provided that you also meet all of these conditions:
 | 
			
		||||
 | 
			
		||||
    a) The modified work must itself be a software library.
 | 
			
		||||
 | 
			
		||||
    b) You must cause the files modified to carry prominent notices
 | 
			
		||||
    stating that you changed the files and the date of any change.
 | 
			
		||||
 | 
			
		||||
    c) You must cause the whole of the work to be licensed at no
 | 
			
		||||
    charge to all third parties under the terms of this License.
 | 
			
		||||
 | 
			
		||||
    d) If a facility in the modified Library refers to a function or a
 | 
			
		||||
    table of data to be supplied by an application program that uses
 | 
			
		||||
    the facility, other than as an argument passed when the facility
 | 
			
		||||
    is invoked, then you must make a good faith effort to ensure that,
 | 
			
		||||
    in the event an application does not supply such function or
 | 
			
		||||
    table, the facility still operates, and performs whatever part of
 | 
			
		||||
    its purpose remains meaningful.
 | 
			
		||||
 | 
			
		||||
    (For example, a function in a library to compute square roots has
 | 
			
		||||
    a purpose that is entirely well-defined independent of the
 | 
			
		||||
    application.  Therefore, Subsection 2d requires that any
 | 
			
		||||
    application-supplied function or table used by this function must
 | 
			
		||||
    be optional: if the application does not supply it, the square
 | 
			
		||||
    root function must still compute square roots.)
 | 
			
		||||
 | 
			
		||||
These requirements apply to the modified work as a whole.  If
 | 
			
		||||
identifiable sections of that work are not derived from the Library,
 | 
			
		||||
and can be reasonably considered independent and separate works in
 | 
			
		||||
themselves, then this License, and its terms, do not apply to those
 | 
			
		||||
sections when you distribute them as separate works.  But when you
 | 
			
		||||
distribute the same sections as part of a whole which is a work based
 | 
			
		||||
on the Library, the distribution of the whole must be on the terms of
 | 
			
		||||
this License, whose permissions for other licensees extend to the
 | 
			
		||||
entire whole, and thus to each and every part regardless of who wrote
 | 
			
		||||
it.
 | 
			
		||||
 | 
			
		||||
Thus, it is not the intent of this section to claim rights or contest
 | 
			
		||||
your rights to work written entirely by you; rather, the intent is to
 | 
			
		||||
exercise the right to control the distribution of derivative or
 | 
			
		||||
collective works based on the Library.
 | 
			
		||||
 | 
			
		||||
In addition, mere aggregation of another work not based on the Library
 | 
			
		||||
with the Library (or with a work based on the Library) on a volume of
 | 
			
		||||
a storage or distribution medium does not bring the other work under
 | 
			
		||||
the scope of this License.
 | 
			
		||||
 | 
			
		||||
  3. You may opt to apply the terms of the ordinary GNU General Public
 | 
			
		||||
License instead of this License to a given copy of the Library.  To do
 | 
			
		||||
this, you must alter all the notices that refer to this License, so
 | 
			
		||||
that they refer to the ordinary GNU General Public License, version 2,
 | 
			
		||||
instead of to this License.  (If a newer version than version 2 of the
 | 
			
		||||
ordinary GNU General Public License has appeared, then you can specify
 | 
			
		||||
that version instead if you wish.)  Do not make any other change in
 | 
			
		||||
these notices.
 | 
			
		||||
^L
 | 
			
		||||
  Once this change is made in a given copy, it is irreversible for
 | 
			
		||||
that copy, so the ordinary GNU General Public License applies to all
 | 
			
		||||
subsequent copies and derivative works made from that copy.
 | 
			
		||||
 | 
			
		||||
  This option is useful when you wish to copy part of the code of
 | 
			
		||||
the Library into a program that is not a library.
 | 
			
		||||
 | 
			
		||||
  4. You may copy and distribute the Library (or a portion or
 | 
			
		||||
derivative of it, under Section 2) in object code or executable form
 | 
			
		||||
under the terms of Sections 1 and 2 above provided that you accompany
 | 
			
		||||
it with the complete corresponding machine-readable source code, which
 | 
			
		||||
must be distributed under the terms of Sections 1 and 2 above on a
 | 
			
		||||
medium customarily used for software interchange.
 | 
			
		||||
 | 
			
		||||
  If distribution of object code is made by offering access to copy
 | 
			
		||||
from a designated place, then offering equivalent access to copy the
 | 
			
		||||
source code from the same place satisfies the requirement to
 | 
			
		||||
distribute the source code, even though third parties are not
 | 
			
		||||
compelled to copy the source along with the object code.
 | 
			
		||||
 | 
			
		||||
  5. A program that contains no derivative of any portion of the
 | 
			
		||||
Library, but is designed to work with the Library by being compiled or
 | 
			
		||||
linked with it, is called a "work that uses the Library".  Such a
 | 
			
		||||
work, in isolation, is not a derivative work of the Library, and
 | 
			
		||||
therefore falls outside the scope of this License.
 | 
			
		||||
 | 
			
		||||
  However, linking a "work that uses the Library" with the Library
 | 
			
		||||
creates an executable that is a derivative of the Library (because it
 | 
			
		||||
contains portions of the Library), rather than a "work that uses the
 | 
			
		||||
library".  The executable is therefore covered by this License.
 | 
			
		||||
Section 6 states terms for distribution of such executables.
 | 
			
		||||
 | 
			
		||||
  When a "work that uses the Library" uses material from a header file
 | 
			
		||||
that is part of the Library, the object code for the work may be a
 | 
			
		||||
derivative work of the Library even though the source code is not.
 | 
			
		||||
Whether this is true is especially significant if the work can be
 | 
			
		||||
linked without the Library, or if the work is itself a library.  The
 | 
			
		||||
threshold for this to be true is not precisely defined by law.
 | 
			
		||||
 | 
			
		||||
  If such an object file uses only numerical parameters, data
 | 
			
		||||
structure layouts and accessors, and small macros and small inline
 | 
			
		||||
functions (ten lines or less in length), then the use of the object
 | 
			
		||||
file is unrestricted, regardless of whether it is legally a derivative
 | 
			
		||||
work.  (Executables containing this object code plus portions of the
 | 
			
		||||
Library will still fall under Section 6.)
 | 
			
		||||
 | 
			
		||||
  Otherwise, if the work is a derivative of the Library, you may
 | 
			
		||||
distribute the object code for the work under the terms of Section 6.
 | 
			
		||||
Any executables containing that work also fall under Section 6,
 | 
			
		||||
whether or not they are linked directly with the Library itself.
 | 
			
		||||
^L
 | 
			
		||||
  6. As an exception to the Sections above, you may also combine or
 | 
			
		||||
link a "work that uses the Library" with the Library to produce a
 | 
			
		||||
work containing portions of the Library, and distribute that work
 | 
			
		||||
under terms of your choice, provided that the terms permit
 | 
			
		||||
modification of the work for the customer's own use and reverse
 | 
			
		||||
engineering for debugging such modifications.
 | 
			
		||||
 | 
			
		||||
  You must give prominent notice with each copy of the work that the
 | 
			
		||||
Library is used in it and that the Library and its use are covered by
 | 
			
		||||
this License.  You must supply a copy of this License.  If the work
 | 
			
		||||
during execution displays copyright notices, you must include the
 | 
			
		||||
copyright notice for the Library among them, as well as a reference
 | 
			
		||||
directing the user to the copy of this License.  Also, you must do one
 | 
			
		||||
of these things:
 | 
			
		||||
 | 
			
		||||
    a) Accompany the work with the complete corresponding
 | 
			
		||||
    machine-readable source code for the Library including whatever
 | 
			
		||||
    changes were used in the work (which must be distributed under
 | 
			
		||||
    Sections 1 and 2 above); and, if the work is an executable linked
 | 
			
		||||
    with the Library, with the complete machine-readable "work that
 | 
			
		||||
    uses the Library", as object code and/or source code, so that the
 | 
			
		||||
    user can modify the Library and then relink to produce a modified
 | 
			
		||||
    executable containing the modified Library.  (It is understood
 | 
			
		||||
    that the user who changes the contents of definitions files in the
 | 
			
		||||
    Library will not necessarily be able to recompile the application
 | 
			
		||||
    to use the modified definitions.)
 | 
			
		||||
 | 
			
		||||
    b) Use a suitable shared library mechanism for linking with the
 | 
			
		||||
    Library.  A suitable mechanism is one that (1) uses at run time a
 | 
			
		||||
    copy of the library already present on the user's computer system,
 | 
			
		||||
    rather than copying library functions into the executable, and (2)
 | 
			
		||||
    will operate properly with a modified version of the library, if
 | 
			
		||||
    the user installs one, as long as the modified version is
 | 
			
		||||
    interface-compatible with the version that the work was made with.
 | 
			
		||||
 | 
			
		||||
    c) Accompany the work with a written offer, valid for at least
 | 
			
		||||
    three years, to give the same user the materials specified in
 | 
			
		||||
    Subsection 6a, above, for a charge no more than the cost of
 | 
			
		||||
    performing this distribution.
 | 
			
		||||
 | 
			
		||||
    d) If distribution of the work is made by offering access to copy
 | 
			
		||||
    from a designated place, offer equivalent access to copy the above
 | 
			
		||||
    specified materials from the same place.
 | 
			
		||||
 | 
			
		||||
    e) Verify that the user has already received a copy of these
 | 
			
		||||
    materials or that you have already sent this user a copy.
 | 
			
		||||
 | 
			
		||||
  For an executable, the required form of the "work that uses the
 | 
			
		||||
Library" must include any data and utility programs needed for
 | 
			
		||||
reproducing the executable from it.  However, as a special exception,
 | 
			
		||||
the materials to be distributed need not include anything that is
 | 
			
		||||
normally distributed (in either source or binary form) with the major
 | 
			
		||||
components (compiler, kernel, and so on) of the operating system on
 | 
			
		||||
which the executable runs, unless that component itself accompanies
 | 
			
		||||
the executable.
 | 
			
		||||
 | 
			
		||||
  It may happen that this requirement contradicts the license
 | 
			
		||||
restrictions of other proprietary libraries that do not normally
 | 
			
		||||
accompany the operating system.  Such a contradiction means you cannot
 | 
			
		||||
use both them and the Library together in an executable that you
 | 
			
		||||
distribute.
 | 
			
		||||
^L
 | 
			
		||||
  7. You may place library facilities that are a work based on the
 | 
			
		||||
Library side-by-side in a single library together with other library
 | 
			
		||||
facilities not covered by this License, and distribute such a combined
 | 
			
		||||
library, provided that the separate distribution of the work based on
 | 
			
		||||
the Library and of the other library facilities is otherwise
 | 
			
		||||
permitted, and provided that you do these two things:
 | 
			
		||||
 | 
			
		||||
    a) Accompany the combined library with a copy of the same work
 | 
			
		||||
    based on the Library, uncombined with any other library
 | 
			
		||||
    facilities.  This must be distributed under the terms of the
 | 
			
		||||
    Sections above.
 | 
			
		||||
 | 
			
		||||
    b) Give prominent notice with the combined library of the fact
 | 
			
		||||
    that part of it is a work based on the Library, and explaining
 | 
			
		||||
    where to find the accompanying uncombined form of the same work.
 | 
			
		||||
 | 
			
		||||
  8. You may not copy, modify, sublicense, link with, or distribute
 | 
			
		||||
the Library except as expressly provided under this License.  Any
 | 
			
		||||
attempt otherwise to copy, modify, sublicense, link with, or
 | 
			
		||||
distribute the Library is void, and will automatically terminate your
 | 
			
		||||
rights under this License.  However, parties who have received copies,
 | 
			
		||||
or rights, from you under this License will not have their licenses
 | 
			
		||||
terminated so long as such parties remain in full compliance.
 | 
			
		||||
 | 
			
		||||
  9. You are not required to accept this License, since you have not
 | 
			
		||||
signed it.  However, nothing else grants you permission to modify or
 | 
			
		||||
distribute the Library or its derivative works.  These actions are
 | 
			
		||||
prohibited by law if you do not accept this License.  Therefore, by
 | 
			
		||||
modifying or distributing the Library (or any work based on the
 | 
			
		||||
Library), you indicate your acceptance of this License to do so, and
 | 
			
		||||
all its terms and conditions for copying, distributing or modifying
 | 
			
		||||
the Library or works based on it.
 | 
			
		||||
 | 
			
		||||
  10. Each time you redistribute the Library (or any work based on the
 | 
			
		||||
Library), the recipient automatically receives a license from the
 | 
			
		||||
original licensor to copy, distribute, link with or modify the Library
 | 
			
		||||
subject to these terms and conditions.  You may not impose any further
 | 
			
		||||
restrictions on the recipients' exercise of the rights granted herein.
 | 
			
		||||
You are not responsible for enforcing compliance by third parties with
 | 
			
		||||
this License.
 | 
			
		||||
^L
 | 
			
		||||
  11. If, as a consequence of a court judgment or allegation of patent
 | 
			
		||||
infringement or for any other reason (not limited to patent issues),
 | 
			
		||||
conditions are imposed on you (whether by court order, agreement or
 | 
			
		||||
otherwise) that contradict the conditions of this License, they do not
 | 
			
		||||
excuse you from the conditions of this License.  If you cannot
 | 
			
		||||
distribute so as to satisfy simultaneously your obligations under this
 | 
			
		||||
License and any other pertinent obligations, then as a consequence you
 | 
			
		||||
may not distribute the Library at all.  For example, if a patent
 | 
			
		||||
license would not permit royalty-free redistribution of the Library by
 | 
			
		||||
all those who receive copies directly or indirectly through you, then
 | 
			
		||||
the only way you could satisfy both it and this License would be to
 | 
			
		||||
refrain entirely from distribution of the Library.
 | 
			
		||||
 | 
			
		||||
If any portion of this section is held invalid or unenforceable under
 | 
			
		||||
any particular circumstance, the balance of the section is intended to
 | 
			
		||||
apply, and the section as a whole is intended to apply in other
 | 
			
		||||
circumstances.
 | 
			
		||||
 | 
			
		||||
It is not the purpose of this section to induce you to infringe any
 | 
			
		||||
patents or other property right claims or to contest validity of any
 | 
			
		||||
such claims; this section has the sole purpose of protecting the
 | 
			
		||||
integrity of the free software distribution system which is
 | 
			
		||||
implemented by public license practices.  Many people have made
 | 
			
		||||
generous contributions to the wide range of software distributed
 | 
			
		||||
through that system in reliance on consistent application of that
 | 
			
		||||
system; it is up to the author/donor to decide if he or she is willing
 | 
			
		||||
to distribute software through any other system and a licensee cannot
 | 
			
		||||
impose that choice.
 | 
			
		||||
 | 
			
		||||
This section is intended to make thoroughly clear what is believed to
 | 
			
		||||
be a consequence of the rest of this License.
 | 
			
		||||
 | 
			
		||||
  12. If the distribution and/or use of the Library is restricted in
 | 
			
		||||
certain countries either by patents or by copyrighted interfaces, the
 | 
			
		||||
original copyright holder who places the Library under this License
 | 
			
		||||
may add an explicit geographical distribution limitation excluding those
 | 
			
		||||
countries, so that distribution is permitted only in or among
 | 
			
		||||
countries not thus excluded.  In such case, this License incorporates
 | 
			
		||||
the limitation as if written in the body of this License.
 | 
			
		||||
 | 
			
		||||
  13. The Free Software Foundation may publish revised and/or new
 | 
			
		||||
versions of the Lesser General Public License from time to time.
 | 
			
		||||
Such new versions will be similar in spirit to the present version,
 | 
			
		||||
but may differ in detail to address new problems or concerns.
 | 
			
		||||
 | 
			
		||||
Each version is given a distinguishing version number.  If the Library
 | 
			
		||||
specifies a version number of this License which applies to it and
 | 
			
		||||
"any later version", you have the option of following the terms and
 | 
			
		||||
conditions either of that version or of any later version published by
 | 
			
		||||
the Free Software Foundation.  If the Library does not specify a
 | 
			
		||||
license version number, you may choose any version ever published by
 | 
			
		||||
the Free Software Foundation.
 | 
			
		||||
^L
 | 
			
		||||
  14. If you wish to incorporate parts of the Library into other free
 | 
			
		||||
programs whose distribution conditions are incompatible with these,
 | 
			
		||||
write to the author to ask for permission.  For software which is
 | 
			
		||||
copyrighted by the Free Software Foundation, write to the Free
 | 
			
		||||
Software Foundation; we sometimes make exceptions for this.  Our
 | 
			
		||||
decision will be guided by the two goals of preserving the free status
 | 
			
		||||
of all derivatives of our free software and of promoting the sharing
 | 
			
		||||
and reuse of software generally.
 | 
			
		||||
 | 
			
		||||
                            NO WARRANTY
 | 
			
		||||
 | 
			
		||||
  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
 | 
			
		||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
 | 
			
		||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
 | 
			
		||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
 | 
			
		||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 | 
			
		||||
PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
 | 
			
		||||
LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
 | 
			
		||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
 | 
			
		||||
 | 
			
		||||
  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
 | 
			
		||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
 | 
			
		||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
 | 
			
		||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
 | 
			
		||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
 | 
			
		||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
 | 
			
		||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
 | 
			
		||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
 | 
			
		||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
 | 
			
		||||
DAMAGES.
 | 
			
		||||
 | 
			
		||||
                     END OF TERMS AND CONDITIONS
 | 
			
		||||
^L
 | 
			
		||||
           How to Apply These Terms to Your New Libraries
 | 
			
		||||
 | 
			
		||||
  If you develop a new library, and you want it to be of the greatest
 | 
			
		||||
possible use to the public, we recommend making it free software that
 | 
			
		||||
everyone can redistribute and change.  You can do so by permitting
 | 
			
		||||
redistribution under these terms (or, alternatively, under the terms
 | 
			
		||||
of the ordinary General Public License).
 | 
			
		||||
 | 
			
		||||
  To apply these terms, attach the following notices to the library.
 | 
			
		||||
It is safest to attach them to the start of each source file to most
 | 
			
		||||
effectively convey the exclusion of warranty; and each file should
 | 
			
		||||
have at least the "copyright" line and a pointer to where the full
 | 
			
		||||
notice is found.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    <one line to give the library's name and a brief idea of what it does.>
 | 
			
		||||
    Copyright (C) <year>  <name of author>
 | 
			
		||||
 | 
			
		||||
    This library is free software; you can redistribute it and/or
 | 
			
		||||
    modify it under the terms of the GNU Lesser General Public
 | 
			
		||||
    License as published by the Free Software Foundation; either
 | 
			
		||||
    version 2.1 of the License, or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
    This library is distributed in the hope that it will be useful,
 | 
			
		||||
    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
    Lesser General Public License for more details.
 | 
			
		||||
 | 
			
		||||
    You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
    License along with this library; if not, write to the Free Software
 | 
			
		||||
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
 | 
			
		||||
 | 
			
		||||
Also add information on how to contact you by electronic and paper mail.
 | 
			
		||||
 | 
			
		||||
You should also get your employer (if you work as a programmer) or
 | 
			
		||||
your school, if any, to sign a "copyright disclaimer" for the library,
 | 
			
		||||
if necessary.  Here is a sample; alter the names:
 | 
			
		||||
 | 
			
		||||
  Yoyodyne, Inc., hereby disclaims all copyright interest in the
 | 
			
		||||
  library `Frob' (a library for tweaking knobs) written by James
 | 
			
		||||
  Random Hacker.
 | 
			
		||||
 | 
			
		||||
  <signature of Ty Coon>, 1 April 1990
 | 
			
		||||
  Ty Coon, President of Vice
 | 
			
		||||
 | 
			
		||||
That's all there is to it!
 | 
			
		||||
							
								
								
									
										16699
									
								
								ChangeLog-old
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16699
									
								
								ChangeLog-old
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										759
									
								
								HACKING
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										759
									
								
								HACKING
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,759 @@
 | 
			
		||||
-*- buffer-read-only: t -*- vi: set ro:
 | 
			
		||||
DO NOT EDIT THIS FILE!  IT IS GENERATED AUTOMATICALLY
 | 
			
		||||
from docs/hacking.html.in!
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                         Contributor guidelines
 | 
			
		||||
                         ======================
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
General tips for contributing patches
 | 
			
		||||
=====================================
 | 
			
		||||
(1) Discuss any large changes on the mailing list first. Post patches early and
 | 
			
		||||
listen to feedback.
 | 
			
		||||
 | 
			
		||||
(2) Post patches in unified diff format. A command similar to this should work:
 | 
			
		||||
 | 
			
		||||
  diff -urp libvirt.orig/ libvirt.modified/ > libvirt-myfeature.patch
 | 
			
		||||
 | 
			
		||||
or:
 | 
			
		||||
 | 
			
		||||
  git diff > libvirt-myfeature.patch
 | 
			
		||||
 | 
			
		||||
However, the usual workflow of libvirt developer is:
 | 
			
		||||
 | 
			
		||||
  git checkout master
 | 
			
		||||
  git pull
 | 
			
		||||
  git checkout -t origin -b workbranch
 | 
			
		||||
  Hack, committing any changes along the way
 | 
			
		||||
 | 
			
		||||
Then, when you want to post your patches:
 | 
			
		||||
 | 
			
		||||
  git pull --rebase
 | 
			
		||||
  (fix any conflicts)
 | 
			
		||||
  git send-email --cover-letter --no-chain-reply-to --annotate \
 | 
			
		||||
                 --to=libvir-list@redhat.com master
 | 
			
		||||
 | 
			
		||||
(Note that the "git send-email" subcommand may not be in the main git package
 | 
			
		||||
and using it may require installion of a separate package, for example the
 | 
			
		||||
"git-email" package in Fedora.) For a single patch you can omit
 | 
			
		||||
"--cover-letter", but a series of two or more patches needs a cover letter. If
 | 
			
		||||
you get tired of typing "--to=libvir-list@redhat.com" designation you can set
 | 
			
		||||
it in git config:
 | 
			
		||||
 | 
			
		||||
  git config sendemail.to libvir-list@redhat.com
 | 
			
		||||
 | 
			
		||||
Please follow this as close as you can, especially the rebase and git
 | 
			
		||||
send-email part, as it makes life easier for other developers to review your
 | 
			
		||||
patch set. One should avoid sending patches as attachments, but rather send
 | 
			
		||||
them in email body along with commit message. If a developer is sending
 | 
			
		||||
another version of the patch (e.g. to address review comments), he is advised
 | 
			
		||||
to note differences to previous versions after the "---" line in the patch so
 | 
			
		||||
that it helps reviewers but doesn't become part of git history. Moreover, such
 | 
			
		||||
patch needs to be prefixed correctly with "--subject-prefix=PATCHv2" appended
 | 
			
		||||
to "git send-email" (substitute "v2" with the correct version if needed
 | 
			
		||||
though).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
(3) Split large changes into a series of smaller patches, self-contained if
 | 
			
		||||
possible, with an explanation of each patch and an explanation of how the
 | 
			
		||||
sequence of patches fits together. Moreover, please keep in mind that it's
 | 
			
		||||
required to be able to compile cleanly (*including* "make check" and "make
 | 
			
		||||
syntax-check") after each patch. A feature does not have to work until the end
 | 
			
		||||
of a series, but intermediate patches must compile and not cause test-suite
 | 
			
		||||
failures (this is to preserve the usefulness of "git bisect", among other
 | 
			
		||||
things).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
(4) Make sure your patches apply against libvirt GIT. Developers only follow GIT
 | 
			
		||||
and don't care much about released versions.
 | 
			
		||||
 | 
			
		||||
(5) Run the automated tests on your code before submitting any changes. In
 | 
			
		||||
particular, configure with compile warnings set to -Werror. This is done
 | 
			
		||||
automatically for a git checkout; from a tarball, use:
 | 
			
		||||
 | 
			
		||||
  ./configure --enable-werror
 | 
			
		||||
 | 
			
		||||
and run the tests:
 | 
			
		||||
 | 
			
		||||
  make check
 | 
			
		||||
  make syntax-check
 | 
			
		||||
  make -C tests valgrind
 | 
			
		||||
 | 
			
		||||
The latter test checks for memory leaks.
 | 
			
		||||
 | 
			
		||||
If you encounter any failing tests, the VIR_TEST_DEBUG environment variable
 | 
			
		||||
may provide extra information to debug the failures. Larger values of
 | 
			
		||||
VIR_TEST_DEBUG may provide larger amounts of information:
 | 
			
		||||
 | 
			
		||||
  VIR_TEST_DEBUG=1 make check    (or)
 | 
			
		||||
  VIR_TEST_DEBUG=2 make check
 | 
			
		||||
 | 
			
		||||
Also, individual tests can be run from inside the "tests/" directory, like:
 | 
			
		||||
 | 
			
		||||
  ./qemuxml2xmltest
 | 
			
		||||
 | 
			
		||||
(6) Update tests and/or documentation, particularly if you are adding a new
 | 
			
		||||
feature or changing the output of a program.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
There is more on this subject, including lots of links to background reading
 | 
			
		||||
on the subject, on
 | 
			
		||||
 | 
			
		||||
  Richard Jones' guide to working with open source projects
 | 
			
		||||
  http://et.redhat.com/~rjones/how-to-supply-code-to-open-source-projects/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Code indentation
 | 
			
		||||
================
 | 
			
		||||
Libvirt's C source code generally adheres to some basic code-formatting
 | 
			
		||||
conventions. The existing code base is not totally consistent on this front,
 | 
			
		||||
but we do prefer that contributed code be formatted similarly. In short, use
 | 
			
		||||
spaces-not-TABs for indentation, use 4 spaces for each indentation level, and
 | 
			
		||||
other than that, follow the K&R style.
 | 
			
		||||
 | 
			
		||||
If you use Emacs, add the following to one of one of your start-up files
 | 
			
		||||
(e.g., ~/.emacs), to help ensure that you get indentation right:
 | 
			
		||||
 | 
			
		||||
  ;;; When editing C sources in libvirt, use this style.
 | 
			
		||||
  (defun libvirt-c-mode ()
 | 
			
		||||
    "C mode with adjusted defaults for use with libvirt."
 | 
			
		||||
    (interactive)
 | 
			
		||||
    (c-set-style "K&R")
 | 
			
		||||
    (setq indent-tabs-mode nil) ; indent using spaces, not TABs
 | 
			
		||||
    (setq c-indent-level 4)
 | 
			
		||||
    (setq c-basic-offset 4))
 | 
			
		||||
  (add-hook 'c-mode-hook
 | 
			
		||||
            '(lambda () (if (string-match "/libvirt" (buffer-file-name))
 | 
			
		||||
                            (libvirt-c-mode))))
 | 
			
		||||
 | 
			
		||||
If you use vim, append the following to your ~/.vimrc file:
 | 
			
		||||
 | 
			
		||||
  set nocompatible
 | 
			
		||||
  filetype on
 | 
			
		||||
  set autoindent
 | 
			
		||||
  set smartindent
 | 
			
		||||
  set cindent
 | 
			
		||||
  set tabstop=8
 | 
			
		||||
  set shiftwidth=4
 | 
			
		||||
  set expandtab
 | 
			
		||||
  set cinoptions=(0,:0,l1,t0
 | 
			
		||||
  filetype plugin indent on
 | 
			
		||||
  au FileType make setlocal noexpandtab
 | 
			
		||||
  au BufRead,BufNewFile *.am setlocal noexpandtab
 | 
			
		||||
  match ErrorMsg /\s\+$\| \+\ze\t/
 | 
			
		||||
 | 
			
		||||
Or if you don't want to mess your ~/.vimrc up, you can save the above into a
 | 
			
		||||
file called .lvimrc (not .vimrc) located at the root of libvirt source, then
 | 
			
		||||
install a vim script from
 | 
			
		||||
http://www.vim.org/scripts/script.php?script_id=1408, which will load the
 | 
			
		||||
.lvimrc only when you edit libvirt code.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Code formatting (especially for new code)
 | 
			
		||||
=========================================
 | 
			
		||||
With new code, we can be even more strict. Please apply the following function
 | 
			
		||||
(using GNU indent) to any new code. Note that this also gives you an idea of
 | 
			
		||||
the type of spacing we prefer around operators and keywords:
 | 
			
		||||
 | 
			
		||||
  indent-libvirt()
 | 
			
		||||
  {
 | 
			
		||||
    indent -bad -bap -bbb -bli4 -br -ce -brs -cs -i4 -l75 -lc75 \
 | 
			
		||||
      -sbi4 -psl -saf -sai -saw -sbi4 -ss -sc -cdw -cli4 -npcs -nbc \
 | 
			
		||||
      --no-tabs "$@"
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
Note that sometimes you'll have to post-process that output further, by piping
 | 
			
		||||
it through "expand -i", since some leading TABs can get through. Usually
 | 
			
		||||
they're in macro definitions or strings, and should be converted anyhow.
 | 
			
		||||
 | 
			
		||||
Libvirt requires a C99 compiler for various reasons. However, most of the code
 | 
			
		||||
base prefers to stick to C89 syntax unless there is a compelling reason
 | 
			
		||||
otherwise. For example, it is preferable to use "/* */" comments rather than
 | 
			
		||||
"//". Also, when declaring local variables, the prevailing style has been to
 | 
			
		||||
declare them at the beginning of a scope, rather than immediately before use.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Curly braces
 | 
			
		||||
============
 | 
			
		||||
Omit the curly braces around an "if", "while", "for" etc. body only when that
 | 
			
		||||
body occupies a single line. In every other case we require the braces. This
 | 
			
		||||
ensures that it is trivially easy to identify a single-'statement' loop: each
 | 
			
		||||
has only one 'line' in its body.
 | 
			
		||||
 | 
			
		||||
Omitting braces with a single-line body is fine:
 | 
			
		||||
 | 
			
		||||
  while (expr) // one-line body -> omitting curly braces is ok
 | 
			
		||||
      single_line_stmt();
 | 
			
		||||
 | 
			
		||||
However, the moment your loop/if/else body extends onto a second line, for
 | 
			
		||||
whatever reason (even if it's just an added comment), then you should add
 | 
			
		||||
braces. Otherwise, it would be too easy to insert a statement just before that
 | 
			
		||||
comment (without adding braces), thinking it is already a multi-statement loop:
 | 
			
		||||
 | 
			
		||||
  while (true) // BAD! multi-line body with no braces
 | 
			
		||||
      /* comment... */
 | 
			
		||||
      single_line_stmt();
 | 
			
		||||
 | 
			
		||||
Do this instead:
 | 
			
		||||
 | 
			
		||||
  while (true) { // Always put braces around a multi-line body.
 | 
			
		||||
      /* comment... */
 | 
			
		||||
      single_line_stmt();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
There is one exception: when the second body line is not at the same
 | 
			
		||||
indentation level as the first body line:
 | 
			
		||||
 | 
			
		||||
  if (expr)
 | 
			
		||||
      die("a diagnostic that would make this line"
 | 
			
		||||
          " extend past the 80-column limit"));
 | 
			
		||||
 | 
			
		||||
It is safe to omit the braces in the code above, since the further-indented
 | 
			
		||||
second body line makes it obvious that this is still a single-statement body.
 | 
			
		||||
 | 
			
		||||
To reiterate, don't do this:
 | 
			
		||||
 | 
			
		||||
  if (expr)            // BAD: no braces around...
 | 
			
		||||
      while (expr_2) { // ... a multi-line body
 | 
			
		||||
          ...
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
Do this, instead:
 | 
			
		||||
 | 
			
		||||
  if (expr) {
 | 
			
		||||
      while (expr_2) {
 | 
			
		||||
          ...
 | 
			
		||||
      }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
However, there is one exception in the other direction, when even a one-line
 | 
			
		||||
block should have braces. That occurs when that one-line, brace-less block is
 | 
			
		||||
an "if" or "else" block, and the counterpart block *does* use braces. In that
 | 
			
		||||
case, put braces around both blocks. Also, if the "else" block is much shorter
 | 
			
		||||
than the "if" block, consider negating the "if"-condition and swapping the
 | 
			
		||||
bodies, putting the short block first and making the longer, multi-line block
 | 
			
		||||
be the "else" block.
 | 
			
		||||
 | 
			
		||||
  if (expr) {
 | 
			
		||||
      ...
 | 
			
		||||
      ...
 | 
			
		||||
  }
 | 
			
		||||
  else
 | 
			
		||||
      x = y;    // BAD: braceless "else" with braced "then",
 | 
			
		||||
                // and short block last
 | 
			
		||||
 | 
			
		||||
  if (expr)
 | 
			
		||||
      x = y;    // BAD: braceless "if" with braced "else"
 | 
			
		||||
  else {
 | 
			
		||||
      ...
 | 
			
		||||
      ...
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
Keeping braces consistent and putting the short block first is preferred,
 | 
			
		||||
especially when the multi-line body is more than a few lines long, because it
 | 
			
		||||
is easier to read and grasp the semantics of an if-then-else block when the
 | 
			
		||||
simpler block occurs first, rather than after the more involved block:
 | 
			
		||||
 | 
			
		||||
  if (!expr) {
 | 
			
		||||
    x = y; // putting the smaller block first is more readable
 | 
			
		||||
  } else {
 | 
			
		||||
      ...
 | 
			
		||||
      ...
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
But if negating a complex condition is too ugly, then at least add braces:
 | 
			
		||||
 | 
			
		||||
  if (complex expr not worth negating) {
 | 
			
		||||
      ...
 | 
			
		||||
      ...
 | 
			
		||||
  } else {
 | 
			
		||||
      x = y;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Preprocessor
 | 
			
		||||
============
 | 
			
		||||
For variadic macros, stick with C99 syntax:
 | 
			
		||||
 | 
			
		||||
  #define vshPrint(_ctl, ...) fprintf(stdout, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
Use parenthesis when checking if a macro is defined, and use indentation to
 | 
			
		||||
track nesting:
 | 
			
		||||
 | 
			
		||||
  #if defined(HAVE_POSIX_FALLOCATE) && !defined(HAVE_FALLOCATE)
 | 
			
		||||
  # define fallocate(a,ignored,b,c) posix_fallocate(a,b,c)
 | 
			
		||||
  #endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
C types
 | 
			
		||||
=======
 | 
			
		||||
Use the right type.
 | 
			
		||||
 | 
			
		||||
Scalars
 | 
			
		||||
-------
 | 
			
		||||
- If you're using "int" or "long", odds are good that there's a better type.
 | 
			
		||||
 | 
			
		||||
- If a variable is counting something, be sure to declare it with an unsigned
 | 
			
		||||
type.
 | 
			
		||||
 | 
			
		||||
- If it's memory-size-related, use "size_t" (use "ssize_t" only if required).
 | 
			
		||||
 | 
			
		||||
- If it's file-size related, use uintmax_t, or maybe "off_t".
 | 
			
		||||
 | 
			
		||||
- If it's file-offset related (i.e., signed), use "off_t".
 | 
			
		||||
 | 
			
		||||
- If it's just counting small numbers use "unsigned int"; (on all but oddball
 | 
			
		||||
embedded systems, you can assume that that type is at least four bytes wide).
 | 
			
		||||
 | 
			
		||||
- If a variable has boolean semantics, give it the "bool" type and use the
 | 
			
		||||
corresponding "true" and "false" macros. It's ok to include <stdbool.h>, since
 | 
			
		||||
libvirt's use of gnulib ensures that it exists and is usable.
 | 
			
		||||
 | 
			
		||||
- In the unusual event that you require a specific width, use a standard type
 | 
			
		||||
like "int32_t", "uint32_t", "uint64_t", etc.
 | 
			
		||||
 | 
			
		||||
- While using "bool" is good for readability, it comes with minor caveats:
 | 
			
		||||
 | 
			
		||||
-- Don't use "bool" in places where the type size must be constant across all
 | 
			
		||||
systems, like public interfaces and on-the-wire protocols. Note that it would
 | 
			
		||||
be possible (albeit wasteful) to use "bool" in libvirt's logical wire
 | 
			
		||||
protocol, since XDR maps that to its lower-level "bool_t" type, which *is*
 | 
			
		||||
fixed-size.
 | 
			
		||||
 | 
			
		||||
-- Don't compare a bool variable against the literal, "true", since a value with
 | 
			
		||||
a logical non-false value need not be "1". I.e., don't write "if (seen ==
 | 
			
		||||
true) ...". Rather, write "if (seen)...".
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Of course, take all of the above with a grain of salt. If you're about to use
 | 
			
		||||
some system interface that requires a type like "size_t", "pid_t" or "off_t",
 | 
			
		||||
use matching types for any corresponding variables.
 | 
			
		||||
 | 
			
		||||
Also, if you try to use e.g., "unsigned int" as a type, and that conflicts
 | 
			
		||||
with the signedness of a related variable, sometimes it's best just to use the
 | 
			
		||||
*wrong* type, if 'pulling the thread' and fixing all related variables would
 | 
			
		||||
be too invasive.
 | 
			
		||||
 | 
			
		||||
Finally, while using descriptive types is important, be careful not to go
 | 
			
		||||
overboard. If whatever you're doing causes warnings, or requires casts, then
 | 
			
		||||
reconsider or ask for help.
 | 
			
		||||
 | 
			
		||||
Pointers
 | 
			
		||||
--------
 | 
			
		||||
Ensure that all of your pointers are 'const-correct'. Unless a pointer is used
 | 
			
		||||
to modify the pointed-to storage, give it the "const" attribute. That way, the
 | 
			
		||||
reader knows up-front that this is a read-only pointer. Perhaps more
 | 
			
		||||
importantly, if we're diligent about this, when you see a non-const pointer,
 | 
			
		||||
you're guaranteed that it is used to modify the storage it points to, or it is
 | 
			
		||||
aliased to another pointer that is.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Low level memory management
 | 
			
		||||
===========================
 | 
			
		||||
Use of the malloc/free/realloc/calloc APIs is deprecated in the libvirt
 | 
			
		||||
codebase, because they encourage a number of serious coding bugs and do not
 | 
			
		||||
enable compile time verification of checks for NULL. Instead of these
 | 
			
		||||
routines, use the macros from memory.h.
 | 
			
		||||
 | 
			
		||||
- To allocate a single object:
 | 
			
		||||
 | 
			
		||||
  virDomainPtr domain;
 | 
			
		||||
 | 
			
		||||
  if (VIR_ALLOC(domain) < 0) {
 | 
			
		||||
      virReportOOMError();
 | 
			
		||||
      return NULL;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- To allocate an array of objects:
 | 
			
		||||
 | 
			
		||||
  virDomainPtr domains;
 | 
			
		||||
  size_t ndomains = 10;
 | 
			
		||||
 | 
			
		||||
  if (VIR_ALLOC_N(domains, ndomains) < 0) {
 | 
			
		||||
      virReportOOMError();
 | 
			
		||||
      return NULL;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- To allocate an array of object pointers:
 | 
			
		||||
 | 
			
		||||
  virDomainPtr *domains;
 | 
			
		||||
  size_t ndomains = 10;
 | 
			
		||||
 | 
			
		||||
  if (VIR_ALLOC_N(domains, ndomains) < 0) {
 | 
			
		||||
      virReportOOMError();
 | 
			
		||||
      return NULL;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- To re-allocate the array of domains to be 1 element longer (however, note that
 | 
			
		||||
repeatedly expanding an array by 1 scales quadratically, so this is
 | 
			
		||||
recommended only for smaller arrays):
 | 
			
		||||
 | 
			
		||||
  virDomainPtr domains;
 | 
			
		||||
  size_t ndomains = 0;
 | 
			
		||||
 | 
			
		||||
  if (VIR_EXPAND_N(domains, ndomains, 1) < 0) {
 | 
			
		||||
      virReportOOMError();
 | 
			
		||||
      return NULL;
 | 
			
		||||
  }
 | 
			
		||||
  domains[ndomains - 1] = domain;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- To ensure an array has room to hold at least one more element (this approach
 | 
			
		||||
scales better, but requires tracking allocation separately from usage)
 | 
			
		||||
 | 
			
		||||
  virDomainPtr domains;
 | 
			
		||||
  size_t ndomains = 0;
 | 
			
		||||
  size_t ndomains_max = 0;
 | 
			
		||||
 | 
			
		||||
  if (VIR_RESIZE_N(domains, ndomains_max, ndomains, 1) < 0) {
 | 
			
		||||
      virReportOOMError();
 | 
			
		||||
      return NULL;
 | 
			
		||||
  }
 | 
			
		||||
  domains[ndomains++] = domain;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- To trim an array of domains from its allocated size down to the actual used
 | 
			
		||||
size:
 | 
			
		||||
 | 
			
		||||
  virDomainPtr domains;
 | 
			
		||||
  size_t ndomains = x;
 | 
			
		||||
  size_t ndomains_max = y;
 | 
			
		||||
 | 
			
		||||
  VIR_SHRINK_N(domains, ndomains_max, ndomains_max - ndomains);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- To free an array of domains:
 | 
			
		||||
 | 
			
		||||
  virDomainPtr domains;
 | 
			
		||||
  size_t ndomains = x;
 | 
			
		||||
  size_t ndomains_max = y;
 | 
			
		||||
  size_t i;
 | 
			
		||||
 | 
			
		||||
  for (i = 0; i < ndomains; i++)
 | 
			
		||||
      VIR_FREE(domains[i]);
 | 
			
		||||
  VIR_FREE(domains);
 | 
			
		||||
  ndomains_max = ndomains = 0;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
File handling
 | 
			
		||||
=============
 | 
			
		||||
Usage of the "fdopen()", "close()", "fclose()" APIs is deprecated in libvirt
 | 
			
		||||
code base to help avoiding double-closing of files or file descriptors, which
 | 
			
		||||
is particulary dangerous in a multi-threaded applications. Instead of these
 | 
			
		||||
APIs, use the macros from virfile.h
 | 
			
		||||
 | 
			
		||||
- Open a file from a file descriptor:
 | 
			
		||||
 | 
			
		||||
  if ((file = VIR_FDOPEN(fd, "r")) == NULL) {
 | 
			
		||||
      virReportSystemError(errno, "%s",
 | 
			
		||||
                           _("failed to open file from file descriptor"));
 | 
			
		||||
      return -1;
 | 
			
		||||
  }
 | 
			
		||||
  /* fd is now invalid; only access the file using file variable */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- Close a file descriptor:
 | 
			
		||||
 | 
			
		||||
  if (VIR_CLOSE(fd) < 0) {
 | 
			
		||||
      virReportSystemError(errno, "%s", _("failed to close file"));
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- Close a file:
 | 
			
		||||
 | 
			
		||||
  if (VIR_FCLOSE(file) < 0) {
 | 
			
		||||
      virReportSystemError(errno, "%s", _("failed to close file"));
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- Close a file or file descriptor in an error path, without losing the previous
 | 
			
		||||
"errno" value:
 | 
			
		||||
 | 
			
		||||
  VIR_FORCE_CLOSE(fd);
 | 
			
		||||
  VIR_FORCE_FCLOSE(file);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
String comparisons
 | 
			
		||||
==================
 | 
			
		||||
Do not use the strcmp, strncmp, etc functions directly. Instead use one of the
 | 
			
		||||
following semantically named macros
 | 
			
		||||
 | 
			
		||||
- For strict equality:
 | 
			
		||||
 | 
			
		||||
  STREQ(a,b)
 | 
			
		||||
  STRNEQ(a,b)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- For case insensitive equality:
 | 
			
		||||
 | 
			
		||||
  STRCASEEQ(a,b)
 | 
			
		||||
  STRCASENEQ(a,b)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- For strict equality of a substring:
 | 
			
		||||
 | 
			
		||||
  STREQLEN(a,b,n)
 | 
			
		||||
  STRNEQLEN(a,b,n)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- For case insensitive equality of a substring:
 | 
			
		||||
 | 
			
		||||
  STRCASEEQLEN(a,b,n)
 | 
			
		||||
  STRCASENEQLEN(a,b,n)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- For strict equality of a prefix:
 | 
			
		||||
 | 
			
		||||
  STRPREFIX(a,b)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
- To avoid having to check if a or b are NULL:
 | 
			
		||||
 | 
			
		||||
  STREQ_NULLABLE(a, b)
 | 
			
		||||
  STRNEQ_NULLABLE(a, b)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
String copying
 | 
			
		||||
==============
 | 
			
		||||
Do not use the strncpy function. According to the man page, it does *not*
 | 
			
		||||
guarantee a NULL-terminated buffer, which makes it extremely dangerous to use.
 | 
			
		||||
Instead, use one of the functionally equivalent functions:
 | 
			
		||||
 | 
			
		||||
  virStrncpy(char *dest, const char *src, size_t n, size_t destbytes)
 | 
			
		||||
 | 
			
		||||
The first three arguments have the same meaning as for strncpy; namely the
 | 
			
		||||
destination, source, and number of bytes to copy, respectively. The last
 | 
			
		||||
argument is the number of bytes available in the destination string; if a copy
 | 
			
		||||
of the source string (including a \0) will not fit into the destination, no
 | 
			
		||||
bytes are copied and the routine returns NULL. Otherwise, n bytes from the
 | 
			
		||||
source are copied into the destination and a trailing \0 is appended.
 | 
			
		||||
 | 
			
		||||
  virStrcpy(char *dest, const char *src, size_t destbytes)
 | 
			
		||||
 | 
			
		||||
Use this variant if you know you want to copy the entire src string into dest.
 | 
			
		||||
Note that this is a macro, so arguments could be evaluated more than once.
 | 
			
		||||
This is equivalent to virStrncpy(dest, src, strlen(src), destbytes)
 | 
			
		||||
 | 
			
		||||
  virStrcpyStatic(char *dest, const char *src)
 | 
			
		||||
 | 
			
		||||
Use this variant if you know you want to copy the entire src string into dest
 | 
			
		||||
*and* you know that your destination string is a static string (i.e. that
 | 
			
		||||
sizeof(dest) returns something meaningful). Note that this is a macro, so
 | 
			
		||||
arguments could be evaluated more than once. This is equivalent to
 | 
			
		||||
virStrncpy(dest, src, strlen(src), sizeof(dest)).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Variable length string buffer
 | 
			
		||||
=============================
 | 
			
		||||
If there is a need for complex string concatenations, avoid using the usual
 | 
			
		||||
sequence of malloc/strcpy/strcat/snprintf functions and make use of the
 | 
			
		||||
virBuffer API described in buf.h
 | 
			
		||||
 | 
			
		||||
Typical usage is as follows:
 | 
			
		||||
 | 
			
		||||
  char *
 | 
			
		||||
  somefunction(...)
 | 
			
		||||
  {
 | 
			
		||||
     virBuffer buf = VIR_BUFFER_INITIALIZER;
 | 
			
		||||
 | 
			
		||||
     ...
 | 
			
		||||
 | 
			
		||||
     virBufferAddLit(&buf, "<domain>\n");
 | 
			
		||||
     virBufferAsprintf(&buf, "  <memory>%d</memory>\n", memory);
 | 
			
		||||
     ...
 | 
			
		||||
     virBufferAddLit(&buf, "</domain>\n");
 | 
			
		||||
 | 
			
		||||
     ...
 | 
			
		||||
 | 
			
		||||
     if (virBufferError(&buf)) {
 | 
			
		||||
         virBufferFreeAndReset(&buf);
 | 
			
		||||
         virReportOOMError();
 | 
			
		||||
         return NULL;
 | 
			
		||||
     }
 | 
			
		||||
 | 
			
		||||
     return virBufferContentAndReset(&buf);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Include files
 | 
			
		||||
=============
 | 
			
		||||
There are now quite a large number of include files, both libvirt internal and
 | 
			
		||||
external, and system includes. To manage all this complexity it's best to
 | 
			
		||||
stick to the following general plan for all *.c source files:
 | 
			
		||||
 | 
			
		||||
  /*
 | 
			
		||||
   * Copyright notice
 | 
			
		||||
   * ....
 | 
			
		||||
   * ....
 | 
			
		||||
   * ....
 | 
			
		||||
   *
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  #include <config.h>             Must come first in every file.
 | 
			
		||||
 | 
			
		||||
  #include <stdio.h>              Any system includes you need.
 | 
			
		||||
  #include <string.h>
 | 
			
		||||
  #include <limits.h>
 | 
			
		||||
 | 
			
		||||
  #if HAVE_NUMACTL                Some system includes aren't supported
 | 
			
		||||
  # include <numa.h>              everywhere so need these #if guards.
 | 
			
		||||
  #endif
 | 
			
		||||
 | 
			
		||||
  #include "internal.h"           Include this first, after system includes.
 | 
			
		||||
 | 
			
		||||
  #include "util.h"               Any libvirt internal header files.
 | 
			
		||||
  #include "buf.h"
 | 
			
		||||
 | 
			
		||||
  static int
 | 
			
		||||
  myInternalFunc()                The actual code.
 | 
			
		||||
  {
 | 
			
		||||
      ...
 | 
			
		||||
 | 
			
		||||
Of particular note: *Do not* include libvirt/libvirt.h or libvirt/virterror.h.
 | 
			
		||||
It is included by "internal.h" already and there are some special reasons why
 | 
			
		||||
you cannot include these files explicitly.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Printf-style functions
 | 
			
		||||
======================
 | 
			
		||||
Whenever you add a new printf-style function, i.e., one with a format string
 | 
			
		||||
argument and following "..." in its prototype, be sure to use gcc's printf
 | 
			
		||||
attribute directive in the prototype. For example, here's the one for
 | 
			
		||||
virAsprintf, in util.h:
 | 
			
		||||
 | 
			
		||||
  int virAsprintf(char **strp, const char *fmt, ...)
 | 
			
		||||
      ATTRIBUTE_FORMAT(printf, 2, 3);
 | 
			
		||||
 | 
			
		||||
This makes it so gcc's -Wformat and -Wformat-security options can do their
 | 
			
		||||
jobs and cross-check format strings with the number and types of arguments.
 | 
			
		||||
 | 
			
		||||
When printing to a string, consider using virBuffer for incremental
 | 
			
		||||
allocations, virAsprintf for a one-shot allocation, and snprintf for
 | 
			
		||||
fixed-width buffers. Do not use sprintf, even if you can prove the buffer
 | 
			
		||||
won't overflow, since gnulib does not provide the same portability guarantees
 | 
			
		||||
for sprintf as it does for snprintf.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Use of goto
 | 
			
		||||
===========
 | 
			
		||||
The use of goto is not forbidden, and goto is widely used throughout libvirt.
 | 
			
		||||
While the uncontrolled use of goto will quickly lead to unmaintainable code,
 | 
			
		||||
there is a place for it in well structured code where its use increases
 | 
			
		||||
readability and maintainability. In general, if goto is used for error
 | 
			
		||||
recovery, it's likely to be ok, otherwise, be cautious or avoid it all
 | 
			
		||||
together.
 | 
			
		||||
 | 
			
		||||
The typical use of goto is to jump to cleanup code in the case of a long list
 | 
			
		||||
of actions, any of which may fail and cause the entire operation to fail. In
 | 
			
		||||
this case, a function will have a single label at the end of the function.
 | 
			
		||||
It's almost always ok to use this style. In particular, if the cleanup code
 | 
			
		||||
only involves free'ing memory, then having multiple labels is overkill.
 | 
			
		||||
VIR_FREE() and every function named XXXFree() in libvirt is required to handle
 | 
			
		||||
NULL as its arg. Thus you can safely call free on all the variables even if
 | 
			
		||||
they were not yet allocated (yes they have to have been initialized to NULL).
 | 
			
		||||
This is much simpler and clearer than having multiple labels.
 | 
			
		||||
 | 
			
		||||
There are a couple of signs that a particular use of goto is not ok:
 | 
			
		||||
 | 
			
		||||
- You're using multiple labels. If you find yourself using multiple labels,
 | 
			
		||||
you're strongly encouraged to rework your code to eliminate all but one of
 | 
			
		||||
them.
 | 
			
		||||
 | 
			
		||||
- The goto jumps back up to a point above the current line of code being
 | 
			
		||||
executed. Please use some combination of looping constructs to re-execute code
 | 
			
		||||
instead; it's almost certainly going to be more understandable by others. One
 | 
			
		||||
well-known exception to this rule is restarting an i/o operation following
 | 
			
		||||
EINTR.
 | 
			
		||||
 | 
			
		||||
- The goto jumps down to an arbitrary place in the middle of a function followed
 | 
			
		||||
by further potentially failing calls. You should almost certainly be using a
 | 
			
		||||
conditional and a block instead of a goto. Perhaps some of your function's
 | 
			
		||||
logic would be better pulled out into a helper function.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Although libvirt does not encourage the Linux kernel wind/unwind style of
 | 
			
		||||
multiple labels, there's a good general discussion of the issue archived at
 | 
			
		||||
 | 
			
		||||
  KernelTrap
 | 
			
		||||
  http://kerneltrap.org/node/553/2131
 | 
			
		||||
 | 
			
		||||
When using goto, please use one of these standard labels if it makes sense:
 | 
			
		||||
 | 
			
		||||
      error: A path only taken upon return with an error code
 | 
			
		||||
    cleanup: A path taken upon return with success code + optional error
 | 
			
		||||
  no_memory: A path only taken upon return with an OOM error code
 | 
			
		||||
      retry: If needing to jump upwards (e.g., retry on EINTR)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Libvirt committer guidelines
 | 
			
		||||
============================
 | 
			
		||||
The AUTHORS files indicates the list of people with commit access right who
 | 
			
		||||
can actually merge the patches.
 | 
			
		||||
 | 
			
		||||
The general rule for committing a patch is to make sure it has been reviewed
 | 
			
		||||
properly in the mailing-list first, usually if a couple of people gave an ACK
 | 
			
		||||
or +1 to a patch and nobody raised an objection on the list it should be good
 | 
			
		||||
to go. If the patch touches a part of the code where you're not the main
 | 
			
		||||
maintainer, or where you do not have a very clear idea of how things work,
 | 
			
		||||
it's better to wait for a more authoritative feedback though. Before
 | 
			
		||||
committing, please also rebuild locally, run 'make check syntax-check', and
 | 
			
		||||
make sure you don't raise errors. Try to look for warnings too; for example,
 | 
			
		||||
configure with
 | 
			
		||||
 | 
			
		||||
  --enable-compile-warnings=error
 | 
			
		||||
 | 
			
		||||
which adds -Werror to compile flags, so no warnings get missed
 | 
			
		||||
 | 
			
		||||
An exception to 'review and approval on the list first' is fixing failures to
 | 
			
		||||
build:
 | 
			
		||||
 | 
			
		||||
- if a recently committed patch breaks compilation on a platform or for a given
 | 
			
		||||
driver, then it's fine to commit a minimal fix directly without getting the
 | 
			
		||||
review feedback first
 | 
			
		||||
 | 
			
		||||
- if make check or make syntax-check breaks, if there is an obvious fix, it's
 | 
			
		||||
fine to commit immediately. The patch should still be sent to the list (or
 | 
			
		||||
tell what the fix was if trivial), and 'make check syntax-check' should pass
 | 
			
		||||
too, before committing anything
 | 
			
		||||
 | 
			
		||||
- fixes for documentation and code comments can be managed in the same way, but
 | 
			
		||||
still make sure they get reviewed if non-trivial.
 | 
			
		||||
							
								
								
									
										103
									
								
								Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								Makefile.am
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,103 @@
 | 
			
		||||
## Process this file with automake to produce Makefile.in
 | 
			
		||||
 | 
			
		||||
## Copyright (C) 2005-2011 Red Hat, Inc.
 | 
			
		||||
## See COPYING.LIB for the License of this software
 | 
			
		||||
 | 
			
		||||
LCOV = lcov
 | 
			
		||||
GENHTML = genhtml
 | 
			
		||||
 | 
			
		||||
SUBDIRS = gnulib/lib include src daemon tools docs gnulib/tests \
 | 
			
		||||
  python tests po examples/domain-events/events-c examples/hellolibvirt \
 | 
			
		||||
  examples/dominfo examples/domsuspend examples/python examples/apparmor \
 | 
			
		||||
  examples/xml/nwfilter examples/openauth examples/systemtap
 | 
			
		||||
 | 
			
		||||
ACLOCAL_AMFLAGS = -I m4 -I gnulib/m4
 | 
			
		||||
 | 
			
		||||
XML_EXAMPLES = \
 | 
			
		||||
  $(patsubst $(srcdir)/%,%,$(wildcard $(addprefix $(srcdir)/examples/xml/, \
 | 
			
		||||
					test/*.xml storage/*.xml)))
 | 
			
		||||
 | 
			
		||||
EXTRA_DIST = \
 | 
			
		||||
  ChangeLog-old \
 | 
			
		||||
  libvirt.spec libvirt.spec.in \
 | 
			
		||||
  mingw-libvirt.spec.in \
 | 
			
		||||
  libvirt.pc.in \
 | 
			
		||||
  autobuild.sh \
 | 
			
		||||
  Makefile.nonreentrant \
 | 
			
		||||
  autogen.sh \
 | 
			
		||||
  cfg.mk \
 | 
			
		||||
  examples/domain-events/events-python \
 | 
			
		||||
  run.in \
 | 
			
		||||
  AUTHORS.in \
 | 
			
		||||
  $(XML_EXAMPLES)
 | 
			
		||||
 | 
			
		||||
pkgconfigdir = $(libdir)/pkgconfig
 | 
			
		||||
pkgconfig_DATA = libvirt.pc
 | 
			
		||||
 | 
			
		||||
NEWS: $(top_srcdir)/docs/news.xsl $(top_srcdir)/docs/news.html.in
 | 
			
		||||
	-@(if [ -x $(XSLTPROC) ] ; then				\
 | 
			
		||||
	  $(XSLTPROC) --nonet $(top_srcdir)/docs/news.xsl	\
 | 
			
		||||
	     $(top_srcdir)/docs/news.html.in			\
 | 
			
		||||
	   | perl -0777 -pe 's/\n\n+$$/\n/'			\
 | 
			
		||||
	   | perl -pe 's/[ \t]+$$//'				\
 | 
			
		||||
	   > $@-t && mv $@-t $@ ; fi );
 | 
			
		||||
 | 
			
		||||
$(top_srcdir)/HACKING: $(top_srcdir)/docs/hacking1.xsl $(top_srcdir)/docs/hacking2.xsl \
 | 
			
		||||
                       $(top_srcdir)/docs/wrapstring.xsl $(top_srcdir)/docs/hacking.html.in
 | 
			
		||||
	-@(if [ -x $(XSLTPROC) ] ; then \
 | 
			
		||||
	   $(XSLTPROC) --nonet $(top_srcdir)/docs/hacking1.xsl $(top_srcdir)/docs/hacking.html.in | \
 | 
			
		||||
	   $(XSLTPROC) --nonet $(top_srcdir)/docs/hacking2.xsl - \
 | 
			
		||||
	   | perl -0777 -pe 's/\n\n+$$/\n/' \
 | 
			
		||||
	   > $@-t && mv $@-t $@ ; fi );
 | 
			
		||||
 | 
			
		||||
rpm: clean
 | 
			
		||||
	@(unset CDPATH ; $(MAKE) dist && rpmbuild -ta $(distdir).tar.gz)
 | 
			
		||||
 | 
			
		||||
check-local: all tests
 | 
			
		||||
 | 
			
		||||
tests:
 | 
			
		||||
	@(cd docs/examples ; $(MAKE) MAKEFLAGS+=--silent tests)
 | 
			
		||||
	@(if [ "$(pythondir)" != "" ] ; then cd python ; \
 | 
			
		||||
	  $(MAKE) MAKEFLAGS+=--silent tests ; fi)
 | 
			
		||||
 | 
			
		||||
cov: clean-cov
 | 
			
		||||
	mkdir $(top_builddir)/coverage
 | 
			
		||||
	$(LCOV) -c -o $(top_builddir)/coverage/libvirt.info.tmp \
 | 
			
		||||
	  -d $(top_builddir)/src  -d $(top_builddir)/daemon \
 | 
			
		||||
	  -d $(top_builddir)/tests
 | 
			
		||||
	$(LCOV) -r $(top_builddir)/coverage/libvirt.info.tmp \
 | 
			
		||||
	  -o $(top_builddir)/coverage/libvirt.info
 | 
			
		||||
	rm $(top_builddir)/coverage/libvirt.info.tmp
 | 
			
		||||
	$(GENHTML) --show-details -t "libvirt" -o $(top_builddir)/coverage \
 | 
			
		||||
	  --legend $(top_builddir)/coverage/libvirt.info
 | 
			
		||||
 | 
			
		||||
clean-cov:
 | 
			
		||||
	rm -rf $(top_builddir)/coverage
 | 
			
		||||
 | 
			
		||||
MAINTAINERCLEANFILES = .git-module-status
 | 
			
		||||
 | 
			
		||||
# disable this check
 | 
			
		||||
distuninstallcheck:
 | 
			
		||||
 | 
			
		||||
dist-hook: gen-ChangeLog gen-AUTHORS
 | 
			
		||||
 | 
			
		||||
# Generate the ChangeLog file (with all entries since the switch to git)
 | 
			
		||||
# and insert it into the directory we're about to use to create a tarball.
 | 
			
		||||
gen_start_date = 2009-07-04
 | 
			
		||||
.PHONY: gen-ChangeLog
 | 
			
		||||
gen-ChangeLog:
 | 
			
		||||
	if test -d .git; then					\
 | 
			
		||||
	  $(top_srcdir)/build-aux/gitlog-to-changelog		\
 | 
			
		||||
	    --since=$(gen_start_date) > $(distdir)/cl-t;	\
 | 
			
		||||
	  rm -f $(distdir)/ChangeLog;				\
 | 
			
		||||
	  mv $(distdir)/cl-t $(distdir)/ChangeLog;		\
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
.PHONY: gen-AUTHORS
 | 
			
		||||
gen-AUTHORS:
 | 
			
		||||
	if test -d .git; then \
 | 
			
		||||
	    out="`git log --pretty=format:'%aN <%aE>' | sort -u`" && \
 | 
			
		||||
	    cat $(srcdir)/AUTHORS.in | perl -p -e "s/#authorslist#/$$out/" > \
 | 
			
		||||
	      $(distdir)/AUTHORS-tmp && \
 | 
			
		||||
	    mv -f $(distdir)/AUTHORS-tmp $(distdir)/AUTHORS ; \
 | 
			
		||||
	fi
 | 
			
		||||
							
								
								
									
										100
									
								
								Makefile.nonreentrant
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								Makefile.nonreentrant
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,100 @@
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Generated by running the following on Fedora 9:
 | 
			
		||||
#
 | 
			
		||||
#  nm -D --defined-only /lib/libc.so.6  \
 | 
			
		||||
#      | grep '_r$' \
 | 
			
		||||
#      | awk '{print $3}' \
 | 
			
		||||
#      | grep -v __ \
 | 
			
		||||
#      | grep -v qsort \ # Red herring since we don't need to pass extra args to qsort comparator
 | 
			
		||||
#      | grep -v readdir \ # This is safe as long as each DIR * instance is only used by one thread
 | 
			
		||||
#      | sort \
 | 
			
		||||
#      | uniq \
 | 
			
		||||
#      | sed -e 's/_r//'
 | 
			
		||||
#
 | 
			
		||||
# Also manually add in all inet_* functions some of which
 | 
			
		||||
# are not threadsafe and do not have _r variants. They are
 | 
			
		||||
# all deprecated in favour of getnameinfo/getaddrinfo
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
NON_REENTRANT =
 | 
			
		||||
NON_REENTRANT += asctime
 | 
			
		||||
NON_REENTRANT += ctime
 | 
			
		||||
NON_REENTRANT += drand48
 | 
			
		||||
NON_REENTRANT += ecvt
 | 
			
		||||
NON_REENTRANT += erand48
 | 
			
		||||
NON_REENTRANT += ether_aton
 | 
			
		||||
NON_REENTRANT += ether_ntoa
 | 
			
		||||
NON_REENTRANT += fcvt
 | 
			
		||||
NON_REENTRANT += fgetgrent
 | 
			
		||||
NON_REENTRANT += fgetpwent
 | 
			
		||||
NON_REENTRANT += fgetspent
 | 
			
		||||
NON_REENTRANT += getaliasbyname
 | 
			
		||||
NON_REENTRANT += getaliasent
 | 
			
		||||
NON_REENTRANT += getdate
 | 
			
		||||
NON_REENTRANT += getgrent
 | 
			
		||||
NON_REENTRANT += getgrgid
 | 
			
		||||
NON_REENTRANT += getgrnam
 | 
			
		||||
NON_REENTRANT += gethostbyaddr
 | 
			
		||||
NON_REENTRANT += gethostbyname2
 | 
			
		||||
NON_REENTRANT += gethostbyname
 | 
			
		||||
NON_REENTRANT += gethostent
 | 
			
		||||
NON_REENTRANT += getlogin
 | 
			
		||||
NON_REENTRANT += getmntent
 | 
			
		||||
NON_REENTRANT += getnetbyaddr
 | 
			
		||||
NON_REENTRANT += getnetbyname
 | 
			
		||||
NON_REENTRANT += getnetent
 | 
			
		||||
NON_REENTRANT += getnetgrent
 | 
			
		||||
NON_REENTRANT += getprotobyname
 | 
			
		||||
NON_REENTRANT += getprotobynumber
 | 
			
		||||
NON_REENTRANT += getprotoent
 | 
			
		||||
NON_REENTRANT += getpwent
 | 
			
		||||
NON_REENTRANT += getpwnam
 | 
			
		||||
NON_REENTRANT += getpwuid
 | 
			
		||||
NON_REENTRANT += getrpcbyname
 | 
			
		||||
NON_REENTRANT += getrpcbynumber
 | 
			
		||||
NON_REENTRANT += getrpcent
 | 
			
		||||
NON_REENTRANT += getservbyname
 | 
			
		||||
NON_REENTRANT += getservbyport
 | 
			
		||||
NON_REENTRANT += getservent
 | 
			
		||||
NON_REENTRANT += getspent
 | 
			
		||||
NON_REENTRANT += getspnam
 | 
			
		||||
NON_REENTRANT += getutent
 | 
			
		||||
NON_REENTRANT += getutid
 | 
			
		||||
NON_REENTRANT += getutline
 | 
			
		||||
NON_REENTRANT += gmtime
 | 
			
		||||
NON_REENTRANT += hcreate
 | 
			
		||||
NON_REENTRANT += hdestroy
 | 
			
		||||
NON_REENTRANT += hsearch
 | 
			
		||||
NON_REENTRANT += initstate
 | 
			
		||||
NON_REENTRANT += jrand48
 | 
			
		||||
NON_REENTRANT += lcong48
 | 
			
		||||
NON_REENTRANT += localtime
 | 
			
		||||
NON_REENTRANT += lrand48
 | 
			
		||||
NON_REENTRANT += mrand48
 | 
			
		||||
NON_REENTRANT += nrand48
 | 
			
		||||
NON_REENTRANT += ptsname
 | 
			
		||||
NON_REENTRANT += qecvt
 | 
			
		||||
NON_REENTRANT += qfcvt
 | 
			
		||||
NON_REENTRANT += random
 | 
			
		||||
NON_REENTRANT += rand
 | 
			
		||||
NON_REENTRANT += seed48
 | 
			
		||||
NON_REENTRANT += setstate
 | 
			
		||||
NON_REENTRANT += sgetspent
 | 
			
		||||
NON_REENTRANT += srand48
 | 
			
		||||
NON_REENTRANT += srandom
 | 
			
		||||
NON_REENTRANT += strerror
 | 
			
		||||
NON_REENTRANT += strtok
 | 
			
		||||
NON_REENTRANT += tmpnam
 | 
			
		||||
NON_REENTRANT += ttyname
 | 
			
		||||
NON_REENTRANT += inet_addr
 | 
			
		||||
NON_REENTRANT += inet_aton
 | 
			
		||||
NON_REENTRANT += inet_lnaof
 | 
			
		||||
NON_REENTRANT += inet_makeaddr
 | 
			
		||||
NON_REENTRANT += inet_netof
 | 
			
		||||
NON_REENTRANT += inet_network
 | 
			
		||||
NON_REENTRANT += inet_nsap_addr
 | 
			
		||||
NON_REENTRANT += inet_nsap_ntoa
 | 
			
		||||
NON_REENTRANT += inet_ntoa
 | 
			
		||||
NON_REENTRANT += inet_ntop
 | 
			
		||||
NON_REENTRANT += inet_pton
 | 
			
		||||
							
								
								
									
										13
									
								
								README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								README
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,13 @@
 | 
			
		||||
 | 
			
		||||
         LibVirt : simple API for virtualization
 | 
			
		||||
 | 
			
		||||
  Libvirt is a C toolkit to interact with the virtualization capabilities
 | 
			
		||||
of recent versions of Linux (and other OSes). It is free software
 | 
			
		||||
available under the GNU Lesser General Public License. Virtualization of
 | 
			
		||||
the Linux Operating System means the ability to run multiple instances of
 | 
			
		||||
Operating Systems concurrently on a single hardware system where the basic
 | 
			
		||||
resources are driven by a Linux instance. The library aim at providing
 | 
			
		||||
long term stable C API initially for the Xen paravirtualization but
 | 
			
		||||
should be able to integrate other virtualization mechanisms if needed.
 | 
			
		||||
 | 
			
		||||
Daniel Veillard <veillard@redhat.com>
 | 
			
		||||
							
								
								
									
										57
									
								
								README-hacking
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								README-hacking
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,57 @@
 | 
			
		||||
-*- outline -*-
 | 
			
		||||
 | 
			
		||||
These notes intend to help people working on the checked-out sources.
 | 
			
		||||
These requirements do not apply when building from a distribution tarball.
 | 
			
		||||
See also HACKING for more detailed libvirt contribution guidelines.
 | 
			
		||||
 | 
			
		||||
* Requirements
 | 
			
		||||
 | 
			
		||||
We've opted to keep only the highest-level sources in the GIT repository.
 | 
			
		||||
This eases our maintenance burden, (fewer merges etc.), but imposes more
 | 
			
		||||
requirements on anyone wishing to build from the just-checked-out sources.
 | 
			
		||||
Note the requirements to build the released archive are much less and
 | 
			
		||||
are just the requirements of the standard ./configure && make procedure.
 | 
			
		||||
Specific development tools and versions will be checked for and listed by
 | 
			
		||||
the bootstrap script.
 | 
			
		||||
 | 
			
		||||
Valgrind <http://valgrind.org/> is also highly recommended, if
 | 
			
		||||
Valgrind supports your architecture. See also README-valgrind.
 | 
			
		||||
 | 
			
		||||
While building from a just-cloned source tree may require installing a
 | 
			
		||||
few prerequisites, later, a plain `git pull && make' should be sufficient.
 | 
			
		||||
 | 
			
		||||
* First GIT checkout
 | 
			
		||||
 | 
			
		||||
You can get a copy of the source repository like this:
 | 
			
		||||
 | 
			
		||||
        $ git clone git://libvirt.org/libvirt
 | 
			
		||||
        $ cd libvirt
 | 
			
		||||
 | 
			
		||||
As an optional step, if you already have a copy of the gnulib git
 | 
			
		||||
repository on your hard drive, then you can use it as a reference to
 | 
			
		||||
reduce download time and disk space requirements:
 | 
			
		||||
 | 
			
		||||
        $ export GNULIB_SRCDIR=/path/to/gnulib
 | 
			
		||||
 | 
			
		||||
The next step is to get all required pieces from gnulib,
 | 
			
		||||
to run autoreconf, and to invoke ./configure:
 | 
			
		||||
 | 
			
		||||
        $ ./autogen.sh
 | 
			
		||||
 | 
			
		||||
And there you are!  Just
 | 
			
		||||
 | 
			
		||||
        $ make
 | 
			
		||||
        $ make check
 | 
			
		||||
 | 
			
		||||
At this point, there should be no difference between your local copy,
 | 
			
		||||
and the GIT master copy:
 | 
			
		||||
 | 
			
		||||
        $ git diff
 | 
			
		||||
 | 
			
		||||
should output no difference.
 | 
			
		||||
 | 
			
		||||
Enjoy!
 | 
			
		||||
 | 
			
		||||
Local Variables:
 | 
			
		||||
indent-tabs-mode: nil
 | 
			
		||||
End:
 | 
			
		||||
							
								
								
									
										72
									
								
								README.rst
									
									
									
									
									
								
							
							
						
						
									
										72
									
								
								README.rst
									
									
									
									
									
								
							@@ -1,72 +0,0 @@
 | 
			
		||||
.. image:: https://gitlab.com/libvirt/libvirt/badges/master/pipeline.svg
 | 
			
		||||
     :target: https://gitlab.com/libvirt/libvirt/pipelines
 | 
			
		||||
     :alt: GitLab CI Build Status
 | 
			
		||||
.. image:: https://bestpractices.coreinfrastructure.org/projects/355/badge
 | 
			
		||||
     :target: https://bestpractices.coreinfrastructure.org/projects/355
 | 
			
		||||
     :alt: CII Best Practices
 | 
			
		||||
.. image:: https://translate.fedoraproject.org/widgets/libvirt/-/libvirt/svg-badge.svg
 | 
			
		||||
     :target: https://translate.fedoraproject.org/engage/libvirt/
 | 
			
		||||
     :alt: Translation status
 | 
			
		||||
 | 
			
		||||
==============================
 | 
			
		||||
Libvirt API for virtualization
 | 
			
		||||
==============================
 | 
			
		||||
 | 
			
		||||
Libvirt provides a portable, long term stable C API for managing the
 | 
			
		||||
virtualization technologies provided by many operating systems. It
 | 
			
		||||
includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware
 | 
			
		||||
vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER
 | 
			
		||||
Hypervisor.
 | 
			
		||||
 | 
			
		||||
For some of these hypervisors, it provides a stateful management
 | 
			
		||||
daemon which runs on the virtualization host allowing access to the
 | 
			
		||||
API both by non-privileged local users and remote users.
 | 
			
		||||
 | 
			
		||||
Layered packages provide bindings of the libvirt C API into other
 | 
			
		||||
languages including Python, Perl, PHP, Go, Java, OCaml, as well as
 | 
			
		||||
mappings into object systems such as GObject, CIM and SNMP.
 | 
			
		||||
 | 
			
		||||
Further information about the libvirt project can be found on the
 | 
			
		||||
website:
 | 
			
		||||
 | 
			
		||||
https://libvirt.org
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
License
 | 
			
		||||
=======
 | 
			
		||||
 | 
			
		||||
The libvirt C API is distributed under the terms of GNU Lesser General
 | 
			
		||||
Public License, version 2.1 (or later). Some parts of the code that are
 | 
			
		||||
not part of the C library may have the more restrictive GNU General
 | 
			
		||||
Public License, version 2.0 (or later). See the files ``COPYING.LESSER``
 | 
			
		||||
and ``COPYING`` for full license terms & conditions.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Installation
 | 
			
		||||
============
 | 
			
		||||
 | 
			
		||||
Instructions on building and installing libvirt can be found on the website:
 | 
			
		||||
 | 
			
		||||
https://libvirt.org/compiling.html
 | 
			
		||||
 | 
			
		||||
Contributing
 | 
			
		||||
============
 | 
			
		||||
 | 
			
		||||
The libvirt project welcomes contributions in many ways. For most components
 | 
			
		||||
the best way to contribute is to send patches to the primary development
 | 
			
		||||
mailing list. Further guidance on this can be found on the website:
 | 
			
		||||
 | 
			
		||||
https://libvirt.org/contribute.html
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
=======
 | 
			
		||||
 | 
			
		||||
The libvirt project has two primary mailing lists:
 | 
			
		||||
 | 
			
		||||
* users@lists.libvirt.org (**for user discussions**)
 | 
			
		||||
* devel@lists.libvirt.org (**for development only**)
 | 
			
		||||
 | 
			
		||||
Further details on contacting the project are available on the website:
 | 
			
		||||
 | 
			
		||||
https://libvirt.org/contact.html
 | 
			
		||||
							
								
								
									
										22
									
								
								TODO
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								TODO
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
         libvirt TODO list
 | 
			
		||||
         =================
 | 
			
		||||
 | 
			
		||||
The TODO list changes frequently, so is maintained online
 | 
			
		||||
in the libvirt bugzilla
 | 
			
		||||
 | 
			
		||||
  http://bugzilla.redhat.com/
 | 
			
		||||
 | 
			
		||||
Search against
 | 
			
		||||
 | 
			
		||||
    Product: Virtualization Tools
 | 
			
		||||
  Component: libvirt
 | 
			
		||||
    Subject: RFE
 | 
			
		||||
 | 
			
		||||
Or browse dependent bugs under
 | 
			
		||||
 | 
			
		||||
  https://bugzilla.redhat.com/show_bug.cgi?id=libvirtTodo
 | 
			
		||||
 | 
			
		||||
Summarized reports automatically generated from bugzilla
 | 
			
		||||
and provided online at
 | 
			
		||||
 | 
			
		||||
  http://libvirt.org/todo.html
 | 
			
		||||
							
								
								
									
										113
									
								
								autobuild.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										113
									
								
								autobuild.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,113 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
set -v
 | 
			
		||||
 | 
			
		||||
# Make things clean.
 | 
			
		||||
 | 
			
		||||
test -n "$1" && RESULTS=$1 || RESULTS=results.log
 | 
			
		||||
: ${AUTOBUILD_INSTALL_ROOT=$HOME/builder}
 | 
			
		||||
 | 
			
		||||
test -f Makefile && make -k distclean || :
 | 
			
		||||
rm -rf coverage
 | 
			
		||||
 | 
			
		||||
rm -rf build
 | 
			
		||||
mkdir build
 | 
			
		||||
cd build
 | 
			
		||||
 | 
			
		||||
# Run with options not normally exercised by the rpm build, for
 | 
			
		||||
# more complete code coverage.
 | 
			
		||||
../autogen.sh --prefix="$AUTOBUILD_INSTALL_ROOT" \
 | 
			
		||||
  --enable-test-coverage \
 | 
			
		||||
  --disable-nls \
 | 
			
		||||
  --enable-werror
 | 
			
		||||
 | 
			
		||||
# If the MAKEFLAGS envvar does not yet include a -j option,
 | 
			
		||||
# add -jN where N depends on the number of processors.
 | 
			
		||||
case $MAKEFLAGS in
 | 
			
		||||
  *-j*) ;;
 | 
			
		||||
  *) n=$(getconf _NPROCESSORS_ONLN 2> /dev/null)
 | 
			
		||||
    test "$n" -gt 0 || n=1
 | 
			
		||||
    n=$(expr $n + 1)
 | 
			
		||||
    MAKEFLAGS="$MAKEFLAGS -j$n"
 | 
			
		||||
    export MAKEFLAGS
 | 
			
		||||
    ;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
make
 | 
			
		||||
make install
 | 
			
		||||
 | 
			
		||||
# set -o pipefail is a bashism; this use of exec is the POSIX alternative
 | 
			
		||||
exec 3>&1
 | 
			
		||||
st=$(
 | 
			
		||||
  exec 4>&1 >&3
 | 
			
		||||
  { make check syntax-check 2>&1 3>&- 4>&-; echo $? >&4; } | tee "$RESULTS"
 | 
			
		||||
)
 | 
			
		||||
exec 3>&-
 | 
			
		||||
test "$st" = 0
 | 
			
		||||
test -x /usr/bin/lcov && make cov
 | 
			
		||||
 | 
			
		||||
rm -f *.tar.gz
 | 
			
		||||
make dist
 | 
			
		||||
 | 
			
		||||
if test -n "$AUTOBUILD_COUNTER" ; then
 | 
			
		||||
  EXTRA_RELEASE=".auto$AUTOBUILD_COUNTER"
 | 
			
		||||
else
 | 
			
		||||
  NOW=`date +"%s"`
 | 
			
		||||
  EXTRA_RELEASE=".$USER$NOW"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if test -f /usr/bin/rpmbuild ; then
 | 
			
		||||
  rpmbuild --nodeps \
 | 
			
		||||
     --define "extra_release $EXTRA_RELEASE" \
 | 
			
		||||
     --define "_sourcedir `pwd`" \
 | 
			
		||||
     -ba --clean libvirt.spec
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Test mingw32 cross-compile
 | 
			
		||||
if test -x /usr/bin/i686-w64-mingw32-gcc ; then
 | 
			
		||||
  make distclean
 | 
			
		||||
 | 
			
		||||
  PKG_CONFIG_PATH="$AUTOBUILD_INSTALL_ROOT/i686-w64-mingw32/sys-root/mingw/lib/pkgconfig" \
 | 
			
		||||
  CC="i686-w64-mingw32-gcc" \
 | 
			
		||||
  ../configure \
 | 
			
		||||
    --build=$(uname -m)-w64-linux \
 | 
			
		||||
    --host=i686-w64-mingw32 \
 | 
			
		||||
    --prefix="$AUTOBUILD_INSTALL_ROOT/i686-w64-mingw32/sys-root/mingw" \
 | 
			
		||||
    --enable-werror \
 | 
			
		||||
    --without-libvirtd \
 | 
			
		||||
    --without-python
 | 
			
		||||
 | 
			
		||||
  make
 | 
			
		||||
  make install
 | 
			
		||||
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Test mingw64 cross-compile
 | 
			
		||||
if test -x /usr/bin/x86_64-w64-mingw32-gcc ; then
 | 
			
		||||
  make distclean
 | 
			
		||||
 | 
			
		||||
  PKG_CONFIG_PATH="$AUTOBUILD_INSTALL_ROOT/x86_64-w64-mingw32/sys-root/mingw/lib/pkgconfig" \
 | 
			
		||||
  CC="x86_64-w64-mingw32-gcc" \
 | 
			
		||||
  ../configure \
 | 
			
		||||
    --build=$(uname -m)-w64-linux \
 | 
			
		||||
    --host=x86_64-w64-mingw32 \
 | 
			
		||||
    --prefix="$AUTOBUILD_INSTALL_ROOT/x86_64-w64-mingw32/sys-root/mingw" \
 | 
			
		||||
    --enable-werror \
 | 
			
		||||
    --without-libvirtd \
 | 
			
		||||
    --without-python
 | 
			
		||||
 | 
			
		||||
  make
 | 
			
		||||
  make install
 | 
			
		||||
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
if test -x /usr/bin/i686-w64-mingw32-gcc && test -x /usr/bin/x86_64-w64-mingw32-gcc ; then
 | 
			
		||||
  if test -f /usr/bin/rpmbuild ; then
 | 
			
		||||
    rpmbuild --nodeps \
 | 
			
		||||
       --define "extra_release $EXTRA_RELEASE" \
 | 
			
		||||
       --define "_sourcedir `pwd`" \
 | 
			
		||||
       -ba --clean mingw-libvirt.spec
 | 
			
		||||
  fi
 | 
			
		||||
fi
 | 
			
		||||
							
								
								
									
										105
									
								
								autogen.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										105
									
								
								autogen.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,105 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
# Run this to generate all the initial makefiles, etc.
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
srcdir=`dirname "$0"`
 | 
			
		||||
test -z "$srcdir" && srcdir=.
 | 
			
		||||
 | 
			
		||||
THEDIR=`pwd`
 | 
			
		||||
cd "$srcdir"
 | 
			
		||||
 | 
			
		||||
test -f src/libvirt.c || {
 | 
			
		||||
    echo "You must run this script in the top-level libvirt directory"
 | 
			
		||||
    exit 1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
EXTRA_ARGS=
 | 
			
		||||
no_git=
 | 
			
		||||
if test "x$1" = "x--no-git"; then
 | 
			
		||||
  no_git=" $1"
 | 
			
		||||
  shift
 | 
			
		||||
fi
 | 
			
		||||
if test -z "$NOCONFIGURE" ; then
 | 
			
		||||
  if test "x$1" = "x--system"; then
 | 
			
		||||
    shift
 | 
			
		||||
    prefix=/usr
 | 
			
		||||
    libdir=$prefix/lib
 | 
			
		||||
    sysconfdir=/etc
 | 
			
		||||
    localstatedir=/var
 | 
			
		||||
    if [ -d /usr/lib64 ]; then
 | 
			
		||||
      libdir=$prefix/lib64
 | 
			
		||||
    fi
 | 
			
		||||
    EXTRA_ARGS="--prefix=$prefix --sysconfdir=$sysconfdir --localstatedir=$localstatedir --libdir=$libdir"
 | 
			
		||||
    echo "Running ./configure with $EXTRA_ARGS $@"
 | 
			
		||||
  else
 | 
			
		||||
    if test -z "$*" && test ! -f "$THEDIR/config.status"; then
 | 
			
		||||
        echo "I am going to run ./configure with no arguments - if you wish "
 | 
			
		||||
        echo "to pass any to it, please specify them on the $0 command line."
 | 
			
		||||
    fi
 | 
			
		||||
  fi
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Compute the hash we'll use to determine whether rerunning bootstrap
 | 
			
		||||
# is required.  The first is just the SHA1 that selects a gnulib snapshot.
 | 
			
		||||
# The second ensures that whenever we change the set of gnulib modules used
 | 
			
		||||
# by this package, we rerun bootstrap to pull in the matching set of files.
 | 
			
		||||
# The third ensures that whenever we change the set of local gnulib diffs,
 | 
			
		||||
# we rerun bootstrap to pull in those diffs.
 | 
			
		||||
bootstrap_hash()
 | 
			
		||||
{
 | 
			
		||||
    git submodule status | sed 's/^[ +-]//;s/ .*//'
 | 
			
		||||
    git hash-object bootstrap.conf
 | 
			
		||||
    git ls-tree -d HEAD gnulib/local | awk '{print $3}'
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Ensure that whenever we pull in a gnulib update or otherwise change to a
 | 
			
		||||
# different version (i.e., when switching branches), we also rerun ./bootstrap.
 | 
			
		||||
# Also, running 'make rpm' tends to litter the po/ directory, and some people
 | 
			
		||||
# like to run 'git clean -x -f po' to fix it; but only ./bootstrap regenerates
 | 
			
		||||
# the required file po/Makevars.
 | 
			
		||||
# Only run bootstrap from a git checkout, never from a tarball.
 | 
			
		||||
if test -d .git; then
 | 
			
		||||
    curr_status=.git-module-status
 | 
			
		||||
    t=$(bootstrap_hash; git diff .gnulib)
 | 
			
		||||
    case $t:${CLEAN_SUBMODULE+set} in
 | 
			
		||||
        *:set) ;;
 | 
			
		||||
        *-dirty*)
 | 
			
		||||
            echo "error: gnulib submodule is dirty, please investigate" 2>&1
 | 
			
		||||
            echo "set env-var CLEAN_SUBMODULE to discard gnulib changes" 2>&1
 | 
			
		||||
            exit 1 ;;
 | 
			
		||||
    esac
 | 
			
		||||
    # Keep this test in sync with cfg.mk:_update_required
 | 
			
		||||
    if test "$t" = "$(cat $curr_status 2>/dev/null)" \
 | 
			
		||||
        && test -f "po/Makevars" && test -f AUTHORS; then
 | 
			
		||||
        # good, it's up to date, all we need is autoreconf
 | 
			
		||||
        autoreconf -if
 | 
			
		||||
    else
 | 
			
		||||
        if test ${CLEAN_SUBMODULE+set}; then
 | 
			
		||||
            echo cleaning up submodules...
 | 
			
		||||
            git submodule foreach 'git clean -dfqx && git reset --hard'
 | 
			
		||||
        fi
 | 
			
		||||
        echo running bootstrap$no_git...
 | 
			
		||||
        ./bootstrap$no_git --bootstrap-sync && bootstrap_hash > $curr_status \
 | 
			
		||||
            || { echo "Failed to bootstrap, please investigate."; exit 1; }
 | 
			
		||||
    fi
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
test -n "$NOCONFIGURE" && exit 0
 | 
			
		||||
 | 
			
		||||
cd "$THEDIR"
 | 
			
		||||
 | 
			
		||||
if test "x$OBJ_DIR" != x; then
 | 
			
		||||
    mkdir -p "$OBJ_DIR"
 | 
			
		||||
    cd "$OBJ_DIR"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if test -z "$*" && test -z "$EXTRA_ARGS" && test -f config.status; then
 | 
			
		||||
    ./config.status --recheck
 | 
			
		||||
else
 | 
			
		||||
    $srcdir/configure $EXTRA_ARGS "$@"
 | 
			
		||||
fi && {
 | 
			
		||||
    echo
 | 
			
		||||
    echo "Now type 'make' to compile libvirt."
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										976
									
								
								bootstrap
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										976
									
								
								bootstrap
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,976 @@
 | 
			
		||||
#! /bin/sh
 | 
			
		||||
# Print a version string.
 | 
			
		||||
scriptversion=2012-07-19.14; # UTC
 | 
			
		||||
 | 
			
		||||
# Bootstrap this package from checked-out sources.
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2003-2012 Free Software Foundation, Inc.
 | 
			
		||||
 | 
			
		||||
# This program is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This program is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
# GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
# Originally written by Paul Eggert.  The canonical version of this
 | 
			
		||||
# script is maintained as build-aux/bootstrap in gnulib, however, to
 | 
			
		||||
# be useful to your project, you should place a copy of it under
 | 
			
		||||
# version control in the top-level directory of your project.  The
 | 
			
		||||
# intent is that all customization can be done with a bootstrap.conf
 | 
			
		||||
# file also maintained in your version control; gnulib comes with a
 | 
			
		||||
# template build-aux/bootstrap.conf to get you started.
 | 
			
		||||
 | 
			
		||||
# Please report bugs or propose patches to bug-gnulib@gnu.org.
 | 
			
		||||
 | 
			
		||||
nl='
 | 
			
		||||
'
 | 
			
		||||
 | 
			
		||||
# Ensure file names are sorted consistently across platforms.
 | 
			
		||||
LC_ALL=C
 | 
			
		||||
export LC_ALL
 | 
			
		||||
 | 
			
		||||
# Ensure that CDPATH is not set.  Otherwise, the output from cd
 | 
			
		||||
# would cause trouble in at least one use below.
 | 
			
		||||
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 | 
			
		||||
 | 
			
		||||
local_gl_dir=gl
 | 
			
		||||
 | 
			
		||||
me=$0
 | 
			
		||||
 | 
			
		||||
usage() {
 | 
			
		||||
  cat <<EOF
 | 
			
		||||
Usage: $me [OPTION]...
 | 
			
		||||
Bootstrap this package from the checked-out sources.
 | 
			
		||||
 | 
			
		||||
Options:
 | 
			
		||||
 --gnulib-srcdir=DIRNAME  specify the local directory where gnulib
 | 
			
		||||
                          sources reside.  Use this if you already
 | 
			
		||||
                          have gnulib sources on your machine, and
 | 
			
		||||
                          do not want to waste your bandwidth downloading
 | 
			
		||||
                          them again.  Defaults to \$GNULIB_SRCDIR
 | 
			
		||||
 --bootstrap-sync         if this bootstrap script is not identical to
 | 
			
		||||
                          the version in the local gnulib sources,
 | 
			
		||||
                          update this script, and then restart it with
 | 
			
		||||
                          /bin/sh or the shell \$CONFIG_SHELL
 | 
			
		||||
 --no-bootstrap-sync      do not check whether bootstrap is out of sync
 | 
			
		||||
 --copy                   copy files instead of creating symbolic links
 | 
			
		||||
 --force                  attempt to bootstrap even if the sources seem
 | 
			
		||||
                          not to have been checked out
 | 
			
		||||
 --no-git                 do not use git to update gnulib.  Requires that
 | 
			
		||||
                          --gnulib-srcdir point to a correct gnulib snapshot
 | 
			
		||||
 --skip-po                do not download po files
 | 
			
		||||
 | 
			
		||||
If the file $me.conf exists in the same directory as this script, its
 | 
			
		||||
contents are read as shell variables to configure the bootstrap.
 | 
			
		||||
 | 
			
		||||
For build prerequisites, environment variables like \$AUTOCONF and \$AMTAR
 | 
			
		||||
are honored.
 | 
			
		||||
 | 
			
		||||
Running without arguments will suffice in most cases.
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# warnf_ FORMAT-STRING ARG1...
 | 
			
		||||
warnf_ ()
 | 
			
		||||
{
 | 
			
		||||
  warnf_format_=$1
 | 
			
		||||
  shift
 | 
			
		||||
  nl='
 | 
			
		||||
'
 | 
			
		||||
  case $* in
 | 
			
		||||
    *$nl*) me_=$(printf "$me"|tr "$nl|" '??')
 | 
			
		||||
       printf "$warnf_format_" "$@" | sed "s|^|$me_: |" ;;
 | 
			
		||||
    *) printf "$me: $warnf_format_" "$@" ;;
 | 
			
		||||
  esac >&2
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# warn_ WORD1...
 | 
			
		||||
warn_ ()
 | 
			
		||||
{
 | 
			
		||||
  # If IFS does not start with ' ', set it and emit the warning in a subshell.
 | 
			
		||||
  case $IFS in
 | 
			
		||||
    ' '*) warnf_ '%s\n' "$*";;
 | 
			
		||||
    *)    (IFS=' '; warn_ "$@");;
 | 
			
		||||
  esac
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# die WORD1...
 | 
			
		||||
die() { warn_ "$@"; exit 1; }
 | 
			
		||||
 | 
			
		||||
# Configuration.
 | 
			
		||||
 | 
			
		||||
# Name of the Makefile.am
 | 
			
		||||
gnulib_mk=gnulib.mk
 | 
			
		||||
 | 
			
		||||
# List of gnulib modules needed.
 | 
			
		||||
gnulib_modules=
 | 
			
		||||
 | 
			
		||||
# Any gnulib files needed that are not in modules.
 | 
			
		||||
gnulib_files=
 | 
			
		||||
 | 
			
		||||
: ${AUTOPOINT=autopoint}
 | 
			
		||||
: ${AUTORECONF=autoreconf}
 | 
			
		||||
 | 
			
		||||
# A function to be called right after gnulib-tool is run.
 | 
			
		||||
# Override it via your own definition in bootstrap.conf.
 | 
			
		||||
bootstrap_post_import_hook() { :; }
 | 
			
		||||
 | 
			
		||||
# A function to be called after everything else in this script.
 | 
			
		||||
# Override it via your own definition in bootstrap.conf.
 | 
			
		||||
bootstrap_epilogue() { :; }
 | 
			
		||||
 | 
			
		||||
# The command to download all .po files for a specified domain into
 | 
			
		||||
# a specified directory.  Fill in the first %s is the domain name, and
 | 
			
		||||
# the second with the destination directory.  Use rsync's -L and -r
 | 
			
		||||
# options because the latest/%s directory and the .po files within are
 | 
			
		||||
# all symlinks.
 | 
			
		||||
po_download_command_format=\
 | 
			
		||||
"rsync --delete --exclude '*.s1' -Lrtvz \
 | 
			
		||||
 'translationproject.org::tp/latest/%s/' '%s'"
 | 
			
		||||
 | 
			
		||||
# Fallback for downloading .po files (if rsync fails).
 | 
			
		||||
po_download_command_format2=\
 | 
			
		||||
"wget --mirror -nd -q -np -A.po -P '%s' \
 | 
			
		||||
 http://translationproject.org/latest/%s/"
 | 
			
		||||
 | 
			
		||||
extract_package_name='
 | 
			
		||||
  /^AC_INIT(/{
 | 
			
		||||
     /.*,.*,.*, */{
 | 
			
		||||
       s///
 | 
			
		||||
       s/[][]//g
 | 
			
		||||
       s/)$//
 | 
			
		||||
       p
 | 
			
		||||
       q
 | 
			
		||||
     }
 | 
			
		||||
     s/AC_INIT(\[*//
 | 
			
		||||
     s/]*,.*//
 | 
			
		||||
     s/^GNU //
 | 
			
		||||
     y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
 | 
			
		||||
     s/[^A-Za-z0-9_]/-/g
 | 
			
		||||
     p
 | 
			
		||||
  }
 | 
			
		||||
'
 | 
			
		||||
package=$(sed -n "$extract_package_name" configure.ac) \
 | 
			
		||||
  || die 'cannot find package name in configure.ac'
 | 
			
		||||
gnulib_name=lib$package
 | 
			
		||||
 | 
			
		||||
build_aux=build-aux
 | 
			
		||||
source_base=lib
 | 
			
		||||
m4_base=m4
 | 
			
		||||
doc_base=doc
 | 
			
		||||
tests_base=tests
 | 
			
		||||
gnulib_extra_files=''
 | 
			
		||||
 | 
			
		||||
# Additional gnulib-tool options to use.  Use "\newline" to break lines.
 | 
			
		||||
gnulib_tool_option_extras=
 | 
			
		||||
 | 
			
		||||
# Other locale categories that need message catalogs.
 | 
			
		||||
EXTRA_LOCALE_CATEGORIES=
 | 
			
		||||
 | 
			
		||||
# Additional xgettext options to use.  Use "\\\newline" to break lines.
 | 
			
		||||
XGETTEXT_OPTIONS='\\\
 | 
			
		||||
 --flag=_:1:pass-c-format\\\
 | 
			
		||||
 --flag=N_:1:pass-c-format\\\
 | 
			
		||||
 --flag=error:3:c-format --flag=error_at_line:5:c-format\\\
 | 
			
		||||
'
 | 
			
		||||
 | 
			
		||||
# Package bug report address and copyright holder for gettext files
 | 
			
		||||
COPYRIGHT_HOLDER='Free Software Foundation, Inc.'
 | 
			
		||||
MSGID_BUGS_ADDRESS=bug-$package@gnu.org
 | 
			
		||||
 | 
			
		||||
# Files we don't want to import.
 | 
			
		||||
excluded_files=
 | 
			
		||||
 | 
			
		||||
# File that should exist in the top directory of a checked out hierarchy,
 | 
			
		||||
# but not in a distribution tarball.
 | 
			
		||||
checkout_only_file=README-hacking
 | 
			
		||||
 | 
			
		||||
# Whether to use copies instead of symlinks.
 | 
			
		||||
copy=false
 | 
			
		||||
 | 
			
		||||
# Set this to '.cvsignore .gitignore' in bootstrap.conf if you want
 | 
			
		||||
# those files to be generated in directories like lib/, m4/, and po/.
 | 
			
		||||
# Or set it to 'auto' to make this script select which to use based
 | 
			
		||||
# on which version control system (if any) is used in the source directory.
 | 
			
		||||
vc_ignore=auto
 | 
			
		||||
 | 
			
		||||
# Set this to true in bootstrap.conf to enable --bootstrap-sync by
 | 
			
		||||
# default.
 | 
			
		||||
bootstrap_sync=false
 | 
			
		||||
 | 
			
		||||
# Use git to update gnulib sources
 | 
			
		||||
use_git=true
 | 
			
		||||
 | 
			
		||||
# find_tool ENVVAR NAMES...
 | 
			
		||||
# -------------------------
 | 
			
		||||
# Search for a required program.  Use the value of ENVVAR, if set,
 | 
			
		||||
# otherwise find the first of the NAMES that can be run (i.e.,
 | 
			
		||||
# supports --version).  If found, set ENVVAR to the program name,
 | 
			
		||||
# die otherwise.
 | 
			
		||||
#
 | 
			
		||||
# FIXME: code duplication, see also gnu-web-doc-update.
 | 
			
		||||
find_tool ()
 | 
			
		||||
{
 | 
			
		||||
  find_tool_envvar=$1
 | 
			
		||||
  shift
 | 
			
		||||
  find_tool_names=$@
 | 
			
		||||
  eval "find_tool_res=\$$find_tool_envvar"
 | 
			
		||||
  if test x"$find_tool_res" = x; then
 | 
			
		||||
    for i
 | 
			
		||||
    do
 | 
			
		||||
      if ($i --version </dev/null) >/dev/null 2>&1; then
 | 
			
		||||
       find_tool_res=$i
 | 
			
		||||
       break
 | 
			
		||||
      fi
 | 
			
		||||
    done
 | 
			
		||||
  else
 | 
			
		||||
    find_tool_error_prefix="\$$find_tool_envvar: "
 | 
			
		||||
  fi
 | 
			
		||||
  test x"$find_tool_res" != x \
 | 
			
		||||
    || die "one of these is required: $find_tool_names"
 | 
			
		||||
  ($find_tool_res --version </dev/null) >/dev/null 2>&1 \
 | 
			
		||||
    || die "${find_tool_error_prefix}cannot run $find_tool_res --version"
 | 
			
		||||
  eval "$find_tool_envvar=\$find_tool_res"
 | 
			
		||||
  eval "export $find_tool_envvar"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Find sha1sum, named gsha1sum on MacPorts, and shasum on Mac OS X 10.6.
 | 
			
		||||
find_tool SHA1SUM sha1sum gsha1sum shasum
 | 
			
		||||
 | 
			
		||||
# Override the default configuration, if necessary.
 | 
			
		||||
# Make sure that bootstrap.conf is sourced from the current directory
 | 
			
		||||
# if we were invoked as "sh bootstrap".
 | 
			
		||||
case "$0" in
 | 
			
		||||
  */*) test -r "$0.conf" && . "$0.conf" ;;
 | 
			
		||||
  *) test -r "$0.conf" && . ./"$0.conf" ;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
# Extra files from gnulib, which override files from other sources.
 | 
			
		||||
test -z "${gnulib_extra_files}" && \
 | 
			
		||||
  gnulib_extra_files="
 | 
			
		||||
        $build_aux/install-sh
 | 
			
		||||
        $build_aux/mdate-sh
 | 
			
		||||
        $build_aux/texinfo.tex
 | 
			
		||||
        $build_aux/depcomp
 | 
			
		||||
        $build_aux/config.guess
 | 
			
		||||
        $build_aux/config.sub
 | 
			
		||||
        doc/INSTALL
 | 
			
		||||
"
 | 
			
		||||
 | 
			
		||||
if test "$vc_ignore" = auto; then
 | 
			
		||||
  vc_ignore=
 | 
			
		||||
  test -d .git && vc_ignore=.gitignore
 | 
			
		||||
  test -d CVS && vc_ignore="$vc_ignore .cvsignore"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Translate configuration into internal form.
 | 
			
		||||
 | 
			
		||||
# Parse options.
 | 
			
		||||
 | 
			
		||||
for option
 | 
			
		||||
do
 | 
			
		||||
  case $option in
 | 
			
		||||
  --help)
 | 
			
		||||
    usage
 | 
			
		||||
    exit;;
 | 
			
		||||
  --gnulib-srcdir=*)
 | 
			
		||||
    GNULIB_SRCDIR=${option#--gnulib-srcdir=};;
 | 
			
		||||
  --skip-po)
 | 
			
		||||
    SKIP_PO=t;;
 | 
			
		||||
  --force)
 | 
			
		||||
    checkout_only_file=;;
 | 
			
		||||
  --copy)
 | 
			
		||||
    copy=true;;
 | 
			
		||||
  --bootstrap-sync)
 | 
			
		||||
    bootstrap_sync=true;;
 | 
			
		||||
  --no-bootstrap-sync)
 | 
			
		||||
    bootstrap_sync=false;;
 | 
			
		||||
  --no-git)
 | 
			
		||||
    use_git=false;;
 | 
			
		||||
  *)
 | 
			
		||||
    die "$option: unknown option";;
 | 
			
		||||
  esac
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
$use_git || test -d "$GNULIB_SRCDIR" \
 | 
			
		||||
  || die "Error: --no-git requires --gnulib-srcdir"
 | 
			
		||||
 | 
			
		||||
if test -n "$checkout_only_file" && test ! -r "$checkout_only_file"; then
 | 
			
		||||
  die "Bootstrapping from a non-checked-out distribution is risky."
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Ensure that lines starting with ! sort last, per gitignore conventions
 | 
			
		||||
# for whitelisting exceptions after a more generic blacklist pattern.
 | 
			
		||||
sort_patterns() {
 | 
			
		||||
  sort -u "$@" | sed '/^!/ {
 | 
			
		||||
    H
 | 
			
		||||
    d
 | 
			
		||||
  }
 | 
			
		||||
  $ {
 | 
			
		||||
    P
 | 
			
		||||
    x
 | 
			
		||||
    s/^\n//
 | 
			
		||||
  }' | sed '/^$/d'
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# If $STR is not already on a line by itself in $FILE, insert it,
 | 
			
		||||
# sorting the new contents of the file and replacing $FILE with the result.
 | 
			
		||||
insert_sorted_if_absent() {
 | 
			
		||||
  file=$1
 | 
			
		||||
  str=$2
 | 
			
		||||
  test -f $file || touch $file
 | 
			
		||||
  echo "$str" | sort_patterns - $file | cmp -s - $file > /dev/null \
 | 
			
		||||
    || { echo "$str" | sort_patterns - $file > $file.bak \
 | 
			
		||||
      && mv $file.bak $file; } \
 | 
			
		||||
    || die "insert_sorted_if_absent $file $str: failed"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Adjust $PATTERN for $VC_IGNORE_FILE and insert it with
 | 
			
		||||
# insert_sorted_if_absent.
 | 
			
		||||
insert_vc_ignore() {
 | 
			
		||||
  vc_ignore_file="$1"
 | 
			
		||||
  pattern="$2"
 | 
			
		||||
  case $vc_ignore_file in
 | 
			
		||||
  *.gitignore)
 | 
			
		||||
    # A .gitignore entry that does not start with '/' applies
 | 
			
		||||
    # recursively to subdirectories, so prepend '/' to every
 | 
			
		||||
    # .gitignore entry.
 | 
			
		||||
    pattern=$(echo "$pattern" | sed s,^,/,);;
 | 
			
		||||
  esac
 | 
			
		||||
  insert_sorted_if_absent "$vc_ignore_file" "$pattern"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Die if there is no AC_CONFIG_AUX_DIR($build_aux) line in configure.ac.
 | 
			
		||||
found_aux_dir=no
 | 
			
		||||
grep '^[	 ]*AC_CONFIG_AUX_DIR(\['"$build_aux"'\])' configure.ac \
 | 
			
		||||
    >/dev/null && found_aux_dir=yes
 | 
			
		||||
grep '^[	 ]*AC_CONFIG_AUX_DIR('"$build_aux"')' configure.ac \
 | 
			
		||||
    >/dev/null && found_aux_dir=yes
 | 
			
		||||
test $found_aux_dir = yes \
 | 
			
		||||
  || die "configure.ac lacks 'AC_CONFIG_AUX_DIR([$build_aux])'; add it"
 | 
			
		||||
 | 
			
		||||
# If $build_aux doesn't exist, create it now, otherwise some bits
 | 
			
		||||
# below will malfunction.  If creating it, also mark it as ignored.
 | 
			
		||||
if test ! -d $build_aux; then
 | 
			
		||||
  mkdir $build_aux
 | 
			
		||||
  for dot_ig in x $vc_ignore; do
 | 
			
		||||
    test $dot_ig = x && continue
 | 
			
		||||
    insert_vc_ignore $dot_ig $build_aux
 | 
			
		||||
  done
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Note this deviates from the version comparison in automake
 | 
			
		||||
# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a
 | 
			
		||||
# but this should suffice as we won't be specifying old
 | 
			
		||||
# version formats or redundant trailing .0 in bootstrap.conf.
 | 
			
		||||
# If we did want full compatibility then we should probably
 | 
			
		||||
# use m4_version_compare from autoconf.
 | 
			
		||||
sort_ver() { # sort -V is not generally available
 | 
			
		||||
  ver1="$1"
 | 
			
		||||
  ver2="$2"
 | 
			
		||||
 | 
			
		||||
  # split on '.' and compare each component
 | 
			
		||||
  i=1
 | 
			
		||||
  while : ; do
 | 
			
		||||
    p1=$(echo "$ver1" | cut -d. -f$i)
 | 
			
		||||
    p2=$(echo "$ver2" | cut -d. -f$i)
 | 
			
		||||
    if [ ! "$p1" ]; then
 | 
			
		||||
      echo "$1 $2"
 | 
			
		||||
      break
 | 
			
		||||
    elif [ ! "$p2" ]; then
 | 
			
		||||
      echo "$2 $1"
 | 
			
		||||
      break
 | 
			
		||||
    elif [ ! "$p1" = "$p2" ]; then
 | 
			
		||||
      if [ "$p1" -gt "$p2" ] 2>/dev/null; then # numeric comparison
 | 
			
		||||
        echo "$2 $1"
 | 
			
		||||
      elif [ "$p2" -gt "$p1" ] 2>/dev/null; then # numeric comparison
 | 
			
		||||
        echo "$1 $2"
 | 
			
		||||
      else # numeric, then lexicographic comparison
 | 
			
		||||
        lp=$(printf "$p1\n$p2\n" | LANG=C sort -n | tail -n1)
 | 
			
		||||
        if [ "$lp" = "$p2" ]; then
 | 
			
		||||
          echo "$1 $2"
 | 
			
		||||
        else
 | 
			
		||||
          echo "$2 $1"
 | 
			
		||||
        fi
 | 
			
		||||
      fi
 | 
			
		||||
      break
 | 
			
		||||
    fi
 | 
			
		||||
    i=$(($i+1))
 | 
			
		||||
  done
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
get_version() {
 | 
			
		||||
  app=$1
 | 
			
		||||
 | 
			
		||||
  $app --version >/dev/null 2>&1 || return 1
 | 
			
		||||
 | 
			
		||||
  $app --version 2>&1 |
 | 
			
		||||
  sed -n '# Move version to start of line.
 | 
			
		||||
          s/.*[v ]\([0-9]\)/\1/
 | 
			
		||||
 | 
			
		||||
          # Skip lines that do not start with version.
 | 
			
		||||
          /^[0-9]/!d
 | 
			
		||||
 | 
			
		||||
          # Remove characters after the version.
 | 
			
		||||
          s/[^.a-z0-9-].*//
 | 
			
		||||
 | 
			
		||||
          # The first component must be digits only.
 | 
			
		||||
          s/^\([0-9]*\)[a-z-].*/\1/
 | 
			
		||||
 | 
			
		||||
          #the following essentially does s/5.005/5.5/
 | 
			
		||||
          s/\.0*\([1-9]\)/.\1/g
 | 
			
		||||
          p
 | 
			
		||||
          q'
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
check_versions() {
 | 
			
		||||
  ret=0
 | 
			
		||||
 | 
			
		||||
  while read app req_ver; do
 | 
			
		||||
    # We only need libtoolize from the libtool package.
 | 
			
		||||
    if test "$app" = libtool; then
 | 
			
		||||
      app=libtoolize
 | 
			
		||||
    fi
 | 
			
		||||
    # Exempt git if --no-git is in effect.
 | 
			
		||||
    if test "$app" = git; then
 | 
			
		||||
      $use_git || continue
 | 
			
		||||
    fi
 | 
			
		||||
    # Honor $APP variables ($TAR, $AUTOCONF, etc.)
 | 
			
		||||
    appvar=$(echo $app | LC_ALL=C tr '[a-z]-' '[A-Z]_')
 | 
			
		||||
    test "$appvar" = TAR && appvar=AMTAR
 | 
			
		||||
    case $appvar in
 | 
			
		||||
        GZIP) ;; # Do not use $GZIP:  it contains gzip options.
 | 
			
		||||
        *) eval "app=\${$appvar-$app}" ;;
 | 
			
		||||
    esac
 | 
			
		||||
 | 
			
		||||
    # Handle the still-experimental Automake-NG programs specially.
 | 
			
		||||
    # They remain named as the mainstream Automake programs ("automake",
 | 
			
		||||
    # and "aclocal") to avoid gratuitous incompatibilities with
 | 
			
		||||
    # pre-existing usages (by, say, autoreconf, or custom autogen.sh
 | 
			
		||||
    # scripts), but correctly identify themselves (as being part of
 | 
			
		||||
    # "GNU automake-ng") when asked their version.
 | 
			
		||||
    case $app in
 | 
			
		||||
      automake-ng|aclocal-ng)
 | 
			
		||||
        app=${app%-ng}
 | 
			
		||||
        ($app --version | grep '(GNU automake-ng)') >/dev/null 2>&1 || {
 | 
			
		||||
          warn_ "Error: '$app' not found or not from Automake-NG"
 | 
			
		||||
          ret=1
 | 
			
		||||
          continue
 | 
			
		||||
        } ;;
 | 
			
		||||
    esac
 | 
			
		||||
    if [ "$req_ver" = "-" ]; then
 | 
			
		||||
      # Merely require app to exist; not all prereq apps are well-behaved
 | 
			
		||||
      # so we have to rely on $? rather than get_version.
 | 
			
		||||
      $app --version >/dev/null 2>&1
 | 
			
		||||
      if [ 126 -le $? ]; then
 | 
			
		||||
        warn_ "Error: '$app' not found"
 | 
			
		||||
        ret=1
 | 
			
		||||
      fi
 | 
			
		||||
    else
 | 
			
		||||
      # Require app to produce a new enough version string.
 | 
			
		||||
      inst_ver=$(get_version $app)
 | 
			
		||||
      if [ ! "$inst_ver" ]; then
 | 
			
		||||
        warn_ "Error: '$app' not found"
 | 
			
		||||
        ret=1
 | 
			
		||||
      else
 | 
			
		||||
        latest_ver=$(sort_ver $req_ver $inst_ver | cut -d' ' -f2)
 | 
			
		||||
        if [ ! "$latest_ver" = "$inst_ver" ]; then
 | 
			
		||||
          warnf_ '%s\n'                                        \
 | 
			
		||||
              "Error: '$app' version == $inst_ver is too old"  \
 | 
			
		||||
              "       '$app' version >= $req_ver is required"
 | 
			
		||||
          ret=1
 | 
			
		||||
        fi
 | 
			
		||||
      fi
 | 
			
		||||
    fi
 | 
			
		||||
  done
 | 
			
		||||
 | 
			
		||||
  return $ret
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
print_versions() {
 | 
			
		||||
  echo "Program    Min_version"
 | 
			
		||||
  echo "----------------------"
 | 
			
		||||
  printf %s "$buildreq"
 | 
			
		||||
  echo "----------------------"
 | 
			
		||||
  # can't depend on column -t
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
use_libtool=0
 | 
			
		||||
# We'd like to use grep -E, to see if any of LT_INIT,
 | 
			
		||||
# AC_PROG_LIBTOOL, AM_PROG_LIBTOOL is used in configure.ac,
 | 
			
		||||
# but that's not portable enough (e.g., for Solaris).
 | 
			
		||||
grep '^[	 ]*A[CM]_PROG_LIBTOOL' configure.ac >/dev/null \
 | 
			
		||||
  && use_libtool=1
 | 
			
		||||
grep '^[	 ]*LT_INIT' configure.ac >/dev/null \
 | 
			
		||||
  && use_libtool=1
 | 
			
		||||
if test $use_libtool = 1; then
 | 
			
		||||
  find_tool LIBTOOLIZE glibtoolize libtoolize
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# gnulib-tool requires at least automake and autoconf.
 | 
			
		||||
# If either is not listed, add it (with minimum version) as a prerequisite.
 | 
			
		||||
case $buildreq in
 | 
			
		||||
  *automake*) ;;
 | 
			
		||||
  *) buildreq="automake 1.9
 | 
			
		||||
$buildreq" ;;
 | 
			
		||||
esac
 | 
			
		||||
case $buildreq in
 | 
			
		||||
  *autoconf*) ;;
 | 
			
		||||
  *) buildreq="autoconf 2.59
 | 
			
		||||
$buildreq" ;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
# When we can deduce that gnulib-tool will require patch,
 | 
			
		||||
# and when patch is not already listed as a prerequisite, add it, too.
 | 
			
		||||
if test -d "$local_gl_dir" \
 | 
			
		||||
    && ! find "$local_gl_dir" -name '*.diff' -exec false {} +; then
 | 
			
		||||
  case $buildreq in
 | 
			
		||||
    *patch*) ;;
 | 
			
		||||
    *) buildreq="patch -
 | 
			
		||||
$buildreq" ;;
 | 
			
		||||
  esac
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if ! printf "$buildreq" | check_versions; then
 | 
			
		||||
  echo >&2
 | 
			
		||||
  if test -f README-prereq; then
 | 
			
		||||
    die "See README-prereq for how to get the prerequisite programs"
 | 
			
		||||
  else
 | 
			
		||||
    die "Please install the prerequisite programs"
 | 
			
		||||
  fi
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
echo "$0: Bootstrapping from checked-out $package sources..."
 | 
			
		||||
 | 
			
		||||
# See if we can use gnulib's git-merge-changelog merge driver.
 | 
			
		||||
if test -d .git && (git --version) >/dev/null 2>/dev/null ; then
 | 
			
		||||
  if git config merge.merge-changelog.driver >/dev/null ; then
 | 
			
		||||
    :
 | 
			
		||||
  elif (git-merge-changelog --version) >/dev/null 2>/dev/null ; then
 | 
			
		||||
    echo "$0: initializing git-merge-changelog driver"
 | 
			
		||||
    git config merge.merge-changelog.name 'GNU-style ChangeLog merge driver'
 | 
			
		||||
    git config merge.merge-changelog.driver 'git-merge-changelog %O %A %B'
 | 
			
		||||
  else
 | 
			
		||||
    echo "$0: consider installing git-merge-changelog from gnulib"
 | 
			
		||||
  fi
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
cleanup_gnulib() {
 | 
			
		||||
  status=$?
 | 
			
		||||
  rm -fr "$gnulib_path"
 | 
			
		||||
  exit $status
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
git_modules_config () {
 | 
			
		||||
  test -f .gitmodules && git config --file .gitmodules "$@"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
gnulib_path=$(git_modules_config submodule.gnulib.path)
 | 
			
		||||
test -z "$gnulib_path" && gnulib_path=gnulib
 | 
			
		||||
 | 
			
		||||
# Get gnulib files.
 | 
			
		||||
 | 
			
		||||
case ${GNULIB_SRCDIR--} in
 | 
			
		||||
-)
 | 
			
		||||
  if git_modules_config submodule.gnulib.url >/dev/null; then
 | 
			
		||||
    echo "$0: getting gnulib files..."
 | 
			
		||||
    git submodule init || exit $?
 | 
			
		||||
    git submodule update || exit $?
 | 
			
		||||
 | 
			
		||||
  elif [ ! -d "$gnulib_path" ]; then
 | 
			
		||||
    echo "$0: getting gnulib files..."
 | 
			
		||||
 | 
			
		||||
    trap cleanup_gnulib 1 2 13 15
 | 
			
		||||
 | 
			
		||||
    shallow=
 | 
			
		||||
    git clone -h 2>&1 | grep -- --depth > /dev/null && shallow='--depth 2'
 | 
			
		||||
    git clone $shallow git://git.sv.gnu.org/gnulib "$gnulib_path" ||
 | 
			
		||||
      cleanup_gnulib
 | 
			
		||||
 | 
			
		||||
    trap - 1 2 13 15
 | 
			
		||||
  fi
 | 
			
		||||
  GNULIB_SRCDIR=$gnulib_path
 | 
			
		||||
  ;;
 | 
			
		||||
*)
 | 
			
		||||
  # Use GNULIB_SRCDIR as a reference.
 | 
			
		||||
  if test -d "$GNULIB_SRCDIR"/.git && \
 | 
			
		||||
        git_modules_config submodule.gnulib.url >/dev/null; then
 | 
			
		||||
    echo "$0: getting gnulib files..."
 | 
			
		||||
    if git submodule -h|grep -- --reference > /dev/null; then
 | 
			
		||||
      # Prefer the one-liner available in git 1.6.4 or newer.
 | 
			
		||||
      git submodule update --init --reference "$GNULIB_SRCDIR" \
 | 
			
		||||
        "$gnulib_path" || exit $?
 | 
			
		||||
    else
 | 
			
		||||
      # This fallback allows at least git 1.5.5.
 | 
			
		||||
      if test -f "$gnulib_path"/gnulib-tool; then
 | 
			
		||||
        # Since file already exists, assume submodule init already complete.
 | 
			
		||||
        git submodule update || exit $?
 | 
			
		||||
      else
 | 
			
		||||
        # Older git can't clone into an empty directory.
 | 
			
		||||
        rmdir "$gnulib_path" 2>/dev/null
 | 
			
		||||
        git clone --reference "$GNULIB_SRCDIR" \
 | 
			
		||||
          "$(git_modules_config submodule.gnulib.url)" "$gnulib_path" \
 | 
			
		||||
          && git submodule init && git submodule update \
 | 
			
		||||
          || exit $?
 | 
			
		||||
      fi
 | 
			
		||||
    fi
 | 
			
		||||
    GNULIB_SRCDIR=$gnulib_path
 | 
			
		||||
  fi
 | 
			
		||||
  ;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
if $bootstrap_sync; then
 | 
			
		||||
  cmp -s "$0" "$GNULIB_SRCDIR/build-aux/bootstrap" || {
 | 
			
		||||
    echo "$0: updating bootstrap and restarting..."
 | 
			
		||||
    exec sh -c \
 | 
			
		||||
      'cp "$1" "$2" && shift && exec "${CONFIG_SHELL-/bin/sh}" "$@"' \
 | 
			
		||||
      -- "$GNULIB_SRCDIR/build-aux/bootstrap" \
 | 
			
		||||
      "$0" "$@" --no-bootstrap-sync
 | 
			
		||||
  }
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
gnulib_tool=$GNULIB_SRCDIR/gnulib-tool
 | 
			
		||||
<$gnulib_tool || exit $?
 | 
			
		||||
 | 
			
		||||
# Get translations.
 | 
			
		||||
 | 
			
		||||
download_po_files() {
 | 
			
		||||
  subdir=$1
 | 
			
		||||
  domain=$2
 | 
			
		||||
  echo "$me: getting translations into $subdir for $domain..."
 | 
			
		||||
  cmd=$(printf "$po_download_command_format" "$domain" "$subdir")
 | 
			
		||||
  eval "$cmd" && return
 | 
			
		||||
  # Fallback to HTTP.
 | 
			
		||||
  cmd=$(printf "$po_download_command_format2" "$subdir" "$domain")
 | 
			
		||||
  eval "$cmd"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Mirror .po files to $po_dir/.reference and copy only the new
 | 
			
		||||
# or modified ones into $po_dir.  Also update $po_dir/LINGUAS.
 | 
			
		||||
# Note po files that exist locally only are left in $po_dir but will
 | 
			
		||||
# not be included in LINGUAS and hence will not be distributed.
 | 
			
		||||
update_po_files() {
 | 
			
		||||
  # Directory containing primary .po files.
 | 
			
		||||
  # Overwrite them only when we're sure a .po file is new.
 | 
			
		||||
  po_dir=$1
 | 
			
		||||
  domain=$2
 | 
			
		||||
 | 
			
		||||
  # Mirror *.po files into this dir.
 | 
			
		||||
  # Usually contains *.s1 checksum files.
 | 
			
		||||
  ref_po_dir="$po_dir/.reference"
 | 
			
		||||
 | 
			
		||||
  test -d $ref_po_dir || mkdir $ref_po_dir || return
 | 
			
		||||
  download_po_files $ref_po_dir $domain \
 | 
			
		||||
    && ls "$ref_po_dir"/*.po 2>/dev/null |
 | 
			
		||||
      sed 's|.*/||; s|\.po$||' > "$po_dir/LINGUAS" || return
 | 
			
		||||
 | 
			
		||||
  langs=$(cd $ref_po_dir && echo *.po | sed 's/\.po//g')
 | 
			
		||||
  test "$langs" = '*' && langs=x
 | 
			
		||||
  for po in $langs; do
 | 
			
		||||
    case $po in x) continue;; esac
 | 
			
		||||
    new_po="$ref_po_dir/$po.po"
 | 
			
		||||
    cksum_file="$ref_po_dir/$po.s1"
 | 
			
		||||
    if ! test -f "$cksum_file" ||
 | 
			
		||||
        ! test -f "$po_dir/$po.po" ||
 | 
			
		||||
        ! $SHA1SUM -c --status "$cksum_file" \
 | 
			
		||||
            < "$new_po" > /dev/null; then
 | 
			
		||||
      echo "$me: updated $po_dir/$po.po..."
 | 
			
		||||
      cp "$new_po" "$po_dir/$po.po" \
 | 
			
		||||
          && $SHA1SUM < "$new_po" > "$cksum_file"
 | 
			
		||||
    fi
 | 
			
		||||
  done
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
case $SKIP_PO in
 | 
			
		||||
'')
 | 
			
		||||
  if test -d po; then
 | 
			
		||||
    update_po_files po $package || exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  if test -d runtime-po; then
 | 
			
		||||
    update_po_files runtime-po $package-runtime || exit
 | 
			
		||||
  fi;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
symlink_to_dir()
 | 
			
		||||
{
 | 
			
		||||
  src=$1/$2
 | 
			
		||||
  dst=${3-$2}
 | 
			
		||||
 | 
			
		||||
  test -f "$src" && {
 | 
			
		||||
 | 
			
		||||
    # If the destination directory doesn't exist, create it.
 | 
			
		||||
    # This is required at least for "lib/uniwidth/cjk.h".
 | 
			
		||||
    dst_dir=$(dirname "$dst")
 | 
			
		||||
    if ! test -d "$dst_dir"; then
 | 
			
		||||
      mkdir -p "$dst_dir"
 | 
			
		||||
 | 
			
		||||
      # If we've just created a directory like lib/uniwidth,
 | 
			
		||||
      # tell version control system(s) it's ignorable.
 | 
			
		||||
      # FIXME: for now, this does only one level
 | 
			
		||||
      parent=$(dirname "$dst_dir")
 | 
			
		||||
      for dot_ig in x $vc_ignore; do
 | 
			
		||||
        test $dot_ig = x && continue
 | 
			
		||||
        ig=$parent/$dot_ig
 | 
			
		||||
        insert_vc_ignore $ig "${dst_dir##*/}"
 | 
			
		||||
      done
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if $copy; then
 | 
			
		||||
      {
 | 
			
		||||
        test ! -h "$dst" || {
 | 
			
		||||
          echo "$me: rm -f $dst" &&
 | 
			
		||||
          rm -f "$dst"
 | 
			
		||||
        }
 | 
			
		||||
      } &&
 | 
			
		||||
      test -f "$dst" &&
 | 
			
		||||
      cmp -s "$src" "$dst" || {
 | 
			
		||||
        echo "$me: cp -fp $src $dst" &&
 | 
			
		||||
        cp -fp "$src" "$dst"
 | 
			
		||||
      }
 | 
			
		||||
    else
 | 
			
		||||
      # Leave any existing symlink alone, if it already points to the source,
 | 
			
		||||
      # so that broken build tools that care about symlink times
 | 
			
		||||
      # aren't confused into doing unnecessary builds.  Conversely, if the
 | 
			
		||||
      # existing symlink's time stamp is older than the source, make it afresh,
 | 
			
		||||
      # so that broken tools aren't confused into skipping needed builds.  See
 | 
			
		||||
      # <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00326.html>.
 | 
			
		||||
      test -h "$dst" &&
 | 
			
		||||
      src_ls=$(ls -diL "$src" 2>/dev/null) && set $src_ls && src_i=$1 &&
 | 
			
		||||
      dst_ls=$(ls -diL "$dst" 2>/dev/null) && set $dst_ls && dst_i=$1 &&
 | 
			
		||||
      test "$src_i" = "$dst_i" &&
 | 
			
		||||
      both_ls=$(ls -dt "$src" "$dst") &&
 | 
			
		||||
      test "X$both_ls" = "X$dst$nl$src" || {
 | 
			
		||||
        dot_dots=
 | 
			
		||||
        case $src in
 | 
			
		||||
        /*) ;;
 | 
			
		||||
        *)
 | 
			
		||||
          case /$dst/ in
 | 
			
		||||
          *//* | */../* | */./* | /*/*/*/*/*/)
 | 
			
		||||
             die "invalid symlink calculation: $src -> $dst";;
 | 
			
		||||
          /*/*/*/*/)    dot_dots=../../../;;
 | 
			
		||||
          /*/*/*/)      dot_dots=../../;;
 | 
			
		||||
          /*/*/)        dot_dots=../;;
 | 
			
		||||
          esac;;
 | 
			
		||||
        esac
 | 
			
		||||
 | 
			
		||||
        echo "$me: ln -fs $dot_dots$src $dst" &&
 | 
			
		||||
        ln -fs "$dot_dots$src" "$dst"
 | 
			
		||||
      }
 | 
			
		||||
    fi
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
version_controlled_file() {
 | 
			
		||||
  parent=$1
 | 
			
		||||
  file=$2
 | 
			
		||||
  if test -d .git; then
 | 
			
		||||
    git rm -n "$file" > /dev/null 2>&1
 | 
			
		||||
  elif test -d .svn; then
 | 
			
		||||
    svn log -r HEAD "$file" > /dev/null 2>&1
 | 
			
		||||
  elif test -d CVS; then
 | 
			
		||||
    grep -F "/${file##*/}/" "$parent/CVS/Entries" 2>/dev/null |
 | 
			
		||||
             grep '^/[^/]*/[0-9]' > /dev/null
 | 
			
		||||
  else
 | 
			
		||||
    warn_ "no version control for $file?"
 | 
			
		||||
    false
 | 
			
		||||
  fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# NOTE: we have to be careful to run both autopoint and libtoolize
 | 
			
		||||
# before gnulib-tool, since gnulib-tool is likely to provide newer
 | 
			
		||||
# versions of files "installed" by these two programs.
 | 
			
		||||
# Then, *after* gnulib-tool (see below), we have to be careful to
 | 
			
		||||
# run autoreconf in such a way that it does not run either of these
 | 
			
		||||
# two just-pre-run programs.
 | 
			
		||||
 | 
			
		||||
# Import from gettext.
 | 
			
		||||
with_gettext=yes
 | 
			
		||||
grep '^[	 ]*AM_GNU_GETTEXT_VERSION(' configure.ac >/dev/null || \
 | 
			
		||||
    with_gettext=no
 | 
			
		||||
 | 
			
		||||
if test $with_gettext = yes || test $use_libtool = 1; then
 | 
			
		||||
 | 
			
		||||
  tempbase=.bootstrap$$
 | 
			
		||||
  trap "rm -f $tempbase.0 $tempbase.1" 1 2 13 15
 | 
			
		||||
 | 
			
		||||
  > $tempbase.0 > $tempbase.1 &&
 | 
			
		||||
  find . ! -type d -print | sort > $tempbase.0 || exit
 | 
			
		||||
 | 
			
		||||
  if test $with_gettext = yes; then
 | 
			
		||||
    # Released autopoint has the tendency to install macros that have been
 | 
			
		||||
    # obsoleted in current gnulib, so run this before gnulib-tool.
 | 
			
		||||
    echo "$0: $AUTOPOINT --force"
 | 
			
		||||
    $AUTOPOINT --force || exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  # Autoreconf runs aclocal before libtoolize, which causes spurious
 | 
			
		||||
  # warnings if the initial aclocal is confused by the libtoolized
 | 
			
		||||
  # (or worse out-of-date) macro directory.
 | 
			
		||||
  # libtoolize 1.9b added the --install option; but we support back
 | 
			
		||||
  # to libtoolize 1.5.22, where the install action was default.
 | 
			
		||||
  if test $use_libtool = 1; then
 | 
			
		||||
    install=
 | 
			
		||||
    case $($LIBTOOLIZE --help) in
 | 
			
		||||
      *--install*) install=--install ;;
 | 
			
		||||
    esac
 | 
			
		||||
    echo "running: $LIBTOOLIZE $install --copy"
 | 
			
		||||
    $LIBTOOLIZE $install --copy
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  find . ! -type d -print | sort >$tempbase.1
 | 
			
		||||
  old_IFS=$IFS
 | 
			
		||||
  IFS=$nl
 | 
			
		||||
  for file in $(comm -13 $tempbase.0 $tempbase.1); do
 | 
			
		||||
    IFS=$old_IFS
 | 
			
		||||
    parent=${file%/*}
 | 
			
		||||
    version_controlled_file "$parent" "$file" || {
 | 
			
		||||
      for dot_ig in x $vc_ignore; do
 | 
			
		||||
        test $dot_ig = x && continue
 | 
			
		||||
        ig=$parent/$dot_ig
 | 
			
		||||
        insert_vc_ignore "$ig" "${file##*/}"
 | 
			
		||||
      done
 | 
			
		||||
    }
 | 
			
		||||
  done
 | 
			
		||||
  IFS=$old_IFS
 | 
			
		||||
 | 
			
		||||
  rm -f $tempbase.0 $tempbase.1
 | 
			
		||||
  trap - 1 2 13 15
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Import from gnulib.
 | 
			
		||||
 | 
			
		||||
gnulib_tool_options="\
 | 
			
		||||
 --import\
 | 
			
		||||
 --no-changelog\
 | 
			
		||||
 --aux-dir $build_aux\
 | 
			
		||||
 --doc-base $doc_base\
 | 
			
		||||
 --lib $gnulib_name\
 | 
			
		||||
 --m4-base $m4_base/\
 | 
			
		||||
 --source-base $source_base/\
 | 
			
		||||
 --tests-base $tests_base\
 | 
			
		||||
 --local-dir $local_gl_dir\
 | 
			
		||||
 $gnulib_tool_option_extras\
 | 
			
		||||
"
 | 
			
		||||
if test $use_libtool = 1; then
 | 
			
		||||
  case "$gnulib_tool_options " in
 | 
			
		||||
    *' --libtool '*) ;;
 | 
			
		||||
    *) gnulib_tool_options="$gnulib_tool_options --libtool" ;;
 | 
			
		||||
  esac
 | 
			
		||||
fi
 | 
			
		||||
echo "$0: $gnulib_tool $gnulib_tool_options --import ..."
 | 
			
		||||
$gnulib_tool $gnulib_tool_options --import $gnulib_modules &&
 | 
			
		||||
 | 
			
		||||
for file in $gnulib_files; do
 | 
			
		||||
  symlink_to_dir "$GNULIB_SRCDIR" $file \
 | 
			
		||||
    || die "failed to symlink $file"
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
bootstrap_post_import_hook \
 | 
			
		||||
  || die "bootstrap_post_import_hook failed"
 | 
			
		||||
 | 
			
		||||
# Remove any dangling symlink matching "*.m4" or "*.[ch]" in some
 | 
			
		||||
# gnulib-populated directories.  Such .m4 files would cause aclocal to fail.
 | 
			
		||||
# The following requires GNU find 4.2.3 or newer.  Considering the usual
 | 
			
		||||
# portability constraints of this script, that may seem a very demanding
 | 
			
		||||
# requirement, but it should be ok.  Ignore any failure, which is fine,
 | 
			
		||||
# since this is only a convenience to help developers avoid the relatively
 | 
			
		||||
# unusual case in which a symlinked-to .m4 file is git-removed from gnulib
 | 
			
		||||
# between successive runs of this script.
 | 
			
		||||
find "$m4_base" "$source_base" \
 | 
			
		||||
  -depth \( -name '*.m4' -o -name '*.[ch]' \) \
 | 
			
		||||
  -type l -xtype l -delete > /dev/null 2>&1
 | 
			
		||||
 | 
			
		||||
# Some systems (RHEL 5) are using ancient autotools, for which the
 | 
			
		||||
# --no-recursive option had not been invented.  Detect that lack and
 | 
			
		||||
# omit the option when it's not supported.  FIXME in 2017: remove this
 | 
			
		||||
# hack when RHEL 5 autotools are updated, or when they become irrelevant.
 | 
			
		||||
no_recursive=
 | 
			
		||||
case $($AUTORECONF --help) in
 | 
			
		||||
  *--no-recursive*) no_recursive=--no-recursive;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
# Tell autoreconf not to invoke autopoint or libtoolize; they were run above.
 | 
			
		||||
echo "running: AUTOPOINT=true LIBTOOLIZE=true " \
 | 
			
		||||
    "$AUTORECONF --verbose --install $no_recursive -I $m4_base $ACLOCAL_FLAGS"
 | 
			
		||||
AUTOPOINT=true LIBTOOLIZE=true \
 | 
			
		||||
    $AUTORECONF --verbose --install $no_recursive -I $m4_base $ACLOCAL_FLAGS \
 | 
			
		||||
  || die "autoreconf failed"
 | 
			
		||||
 | 
			
		||||
# Get some extra files from gnulib, overriding existing files.
 | 
			
		||||
for file in $gnulib_extra_files; do
 | 
			
		||||
  case $file in
 | 
			
		||||
  */INSTALL) dst=INSTALL;;
 | 
			
		||||
  build-aux/*) dst=$build_aux/${file#build-aux/};;
 | 
			
		||||
  *) dst=$file;;
 | 
			
		||||
  esac
 | 
			
		||||
  symlink_to_dir "$GNULIB_SRCDIR" $file $dst \
 | 
			
		||||
    || die "failed to symlink $file"
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
if test $with_gettext = yes; then
 | 
			
		||||
  # Create gettext configuration.
 | 
			
		||||
  echo "$0: Creating po/Makevars from po/Makevars.template ..."
 | 
			
		||||
  rm -f po/Makevars
 | 
			
		||||
  sed '
 | 
			
		||||
    /^EXTRA_LOCALE_CATEGORIES *=/s/=.*/= '"$EXTRA_LOCALE_CATEGORIES"'/
 | 
			
		||||
    /^COPYRIGHT_HOLDER *=/s/=.*/= '"$COPYRIGHT_HOLDER"'/
 | 
			
		||||
    /^MSGID_BUGS_ADDRESS *=/s|=.*|= '"$MSGID_BUGS_ADDRESS"'|
 | 
			
		||||
    /^XGETTEXT_OPTIONS *=/{
 | 
			
		||||
      s/$/ \\/
 | 
			
		||||
      a\
 | 
			
		||||
          '"$XGETTEXT_OPTIONS"' $${end_of_xgettext_options+}
 | 
			
		||||
    }
 | 
			
		||||
  ' po/Makevars.template >po/Makevars \
 | 
			
		||||
    || die 'cannot generate po/Makevars'
 | 
			
		||||
 | 
			
		||||
  # If the 'gettext' module is in use, grab the latest Makefile.in.in.
 | 
			
		||||
  # If only the 'gettext-h' module is in use, assume autopoint already
 | 
			
		||||
  # put the correct version of this file into place.
 | 
			
		||||
  case $gnulib_modules in
 | 
			
		||||
  *gettext-h*) ;;
 | 
			
		||||
  *gettext*)
 | 
			
		||||
    cp $GNULIB_SRCDIR/build-aux/po/Makefile.in.in po/Makefile.in.in \
 | 
			
		||||
      || die "cannot create po/Makefile.in.in"
 | 
			
		||||
    ;;
 | 
			
		||||
  esac
 | 
			
		||||
 | 
			
		||||
  if test -d runtime-po; then
 | 
			
		||||
    # Similarly for runtime-po/Makevars, but not quite the same.
 | 
			
		||||
    rm -f runtime-po/Makevars
 | 
			
		||||
    sed '
 | 
			
		||||
      /^DOMAIN *=.*/s/=.*/= '"$package"'-runtime/
 | 
			
		||||
      /^subdir *=.*/s/=.*/= runtime-po/
 | 
			
		||||
      /^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-'"$package"'@gnu.org/
 | 
			
		||||
      /^XGETTEXT_OPTIONS *=/{
 | 
			
		||||
        s/$/ \\/
 | 
			
		||||
        a\
 | 
			
		||||
            '"$XGETTEXT_OPTIONS_RUNTIME"' $${end_of_xgettext_options+}
 | 
			
		||||
      }
 | 
			
		||||
    ' po/Makevars.template >runtime-po/Makevars \
 | 
			
		||||
    || die 'cannot generate runtime-po/Makevars'
 | 
			
		||||
 | 
			
		||||
    # Copy identical files from po to runtime-po.
 | 
			
		||||
    (cd po && cp -p Makefile.in.in *-quot *.header *.sed *.sin ../runtime-po)
 | 
			
		||||
  fi
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
bootstrap_epilogue
 | 
			
		||||
 | 
			
		||||
echo "$0: done.  Now you can run './configure'."
 | 
			
		||||
 | 
			
		||||
# Local variables:
 | 
			
		||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
 | 
			
		||||
# time-stamp-start: "scriptversion="
 | 
			
		||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
			
		||||
# time-stamp-time-zone: "UTC"
 | 
			
		||||
# time-stamp-end: "; # UTC"
 | 
			
		||||
# End:
 | 
			
		||||
							
								
								
									
										247
									
								
								bootstrap.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										247
									
								
								bootstrap.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,247 @@
 | 
			
		||||
# Bootstrap configuration.
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2010-2012 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This library is free software; you can redistribute it and/or
 | 
			
		||||
# modify it under the terms of the GNU Lesser General Public
 | 
			
		||||
# License as published by the Free Software Foundation; either
 | 
			
		||||
# version 2.1 of the License, or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This program is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
# GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
# License along with this library.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
# gnulib modules used by this package.
 | 
			
		||||
gnulib_modules='
 | 
			
		||||
accept
 | 
			
		||||
areadlink
 | 
			
		||||
base64
 | 
			
		||||
bind
 | 
			
		||||
bitrotate
 | 
			
		||||
byteswap
 | 
			
		||||
c-ctype
 | 
			
		||||
c-strcase
 | 
			
		||||
c-strcasestr
 | 
			
		||||
calloc-posix
 | 
			
		||||
canonicalize-lgpl
 | 
			
		||||
chown
 | 
			
		||||
clock-time
 | 
			
		||||
close
 | 
			
		||||
connect
 | 
			
		||||
configmake
 | 
			
		||||
count-one-bits
 | 
			
		||||
crypto/md5
 | 
			
		||||
dirname-lgpl
 | 
			
		||||
environ
 | 
			
		||||
execinfo
 | 
			
		||||
fclose
 | 
			
		||||
fcntl
 | 
			
		||||
fcntl-h
 | 
			
		||||
fdatasync
 | 
			
		||||
ffs
 | 
			
		||||
ffsl
 | 
			
		||||
fnmatch
 | 
			
		||||
fsync
 | 
			
		||||
func
 | 
			
		||||
getaddrinfo
 | 
			
		||||
getcwd-lgpl
 | 
			
		||||
gethostname
 | 
			
		||||
getpass
 | 
			
		||||
getpeername
 | 
			
		||||
getsockname
 | 
			
		||||
gettext-h
 | 
			
		||||
gettimeofday
 | 
			
		||||
gitlog-to-changelog
 | 
			
		||||
gnumakefile
 | 
			
		||||
ignore-value
 | 
			
		||||
inet_pton
 | 
			
		||||
intprops
 | 
			
		||||
ioctl
 | 
			
		||||
isatty
 | 
			
		||||
largefile
 | 
			
		||||
ldexp
 | 
			
		||||
listen
 | 
			
		||||
localeconv
 | 
			
		||||
maintainer-makefile
 | 
			
		||||
manywarnings
 | 
			
		||||
mkstemp
 | 
			
		||||
mkstemps
 | 
			
		||||
mktempd
 | 
			
		||||
net_if
 | 
			
		||||
netdb
 | 
			
		||||
nonblocking
 | 
			
		||||
openpty
 | 
			
		||||
passfd
 | 
			
		||||
perror
 | 
			
		||||
physmem
 | 
			
		||||
pipe-posix
 | 
			
		||||
pipe2
 | 
			
		||||
poll
 | 
			
		||||
posix-shell
 | 
			
		||||
pthread
 | 
			
		||||
pthread_sigmask
 | 
			
		||||
recv
 | 
			
		||||
regex
 | 
			
		||||
random_r
 | 
			
		||||
sched
 | 
			
		||||
send
 | 
			
		||||
setsockopt
 | 
			
		||||
sigaction
 | 
			
		||||
sigpipe
 | 
			
		||||
snprintf
 | 
			
		||||
socket
 | 
			
		||||
stat-time
 | 
			
		||||
stdarg
 | 
			
		||||
stpcpy
 | 
			
		||||
strchrnul
 | 
			
		||||
strdup-posix
 | 
			
		||||
strndup
 | 
			
		||||
strerror
 | 
			
		||||
strerror_r-posix
 | 
			
		||||
strptime
 | 
			
		||||
strsep
 | 
			
		||||
strtok_r
 | 
			
		||||
sys_stat
 | 
			
		||||
sys_wait
 | 
			
		||||
termios
 | 
			
		||||
time_r
 | 
			
		||||
timegm
 | 
			
		||||
ttyname_r
 | 
			
		||||
uname
 | 
			
		||||
useless-if-before-free
 | 
			
		||||
usleep
 | 
			
		||||
vasprintf
 | 
			
		||||
verify
 | 
			
		||||
vc-list-files
 | 
			
		||||
vsnprintf
 | 
			
		||||
waitpid
 | 
			
		||||
warnings
 | 
			
		||||
'
 | 
			
		||||
 | 
			
		||||
# Additional xgettext options to use.  Use "\\\newline" to break lines.
 | 
			
		||||
XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
 | 
			
		||||
 --flag=virAsprintf:2:c-format\\\
 | 
			
		||||
 --from-code=UTF-8\\\
 | 
			
		||||
'
 | 
			
		||||
 | 
			
		||||
# This is not a GNU package, so the default bug address is invalid,
 | 
			
		||||
# and the translation project is not in use.
 | 
			
		||||
MSGID_BUGS_ADDRESS=libvir-list@redhat.com
 | 
			
		||||
COPYRIGHT_HOLDER='Red Hat, Inc.'
 | 
			
		||||
SKIP_PO=true
 | 
			
		||||
 | 
			
		||||
# Enable copy-mode for MSYS/MinGW. MSYS' ln doesn't work well in the way
 | 
			
		||||
# bootstrap uses it with relative paths.
 | 
			
		||||
if test -n "$MSYSTEM"; then
 | 
			
		||||
    copy=true
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# If "AM_GNU_GETTEXT(external" or "AM_GNU_GETTEXT([external]"
 | 
			
		||||
# appears in configure.ac, exclude some unnecessary files.
 | 
			
		||||
# Without grep's -E option (not portable enough, pre-configure),
 | 
			
		||||
# the following test is ugly.  Also, this depends on the existence
 | 
			
		||||
# of configure.ac, not the obsolescent-named configure.in.  But if
 | 
			
		||||
# you're using this infrastructure, you should care about such things.
 | 
			
		||||
 | 
			
		||||
gettext_external=0
 | 
			
		||||
grep '^[	 ]*AM_GNU_GETTEXT(external\>' configure.ac > /dev/null &&
 | 
			
		||||
  gettext_external=1
 | 
			
		||||
grep '^[	 ]*AM_GNU_GETTEXT(\[external\]' configure.ac > /dev/null &&
 | 
			
		||||
  gettext_external=1
 | 
			
		||||
 | 
			
		||||
if test $gettext_external = 1; then
 | 
			
		||||
  # Gettext supplies these files, but we don't need them since
 | 
			
		||||
  # we don't have an intl subdirectory.
 | 
			
		||||
  excluded_files='
 | 
			
		||||
      m4/glibc2.m4
 | 
			
		||||
      m4/intdiv0.m4
 | 
			
		||||
      m4/lcmessage.m4
 | 
			
		||||
      m4/uintmax_t.m4
 | 
			
		||||
      m4/ulonglong.m4
 | 
			
		||||
      m4/visibility.m4
 | 
			
		||||
  '
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Tell gnulib to:
 | 
			
		||||
#   require LGPLv2+
 | 
			
		||||
#   apply any local diffs in gnulib/local/ dir
 | 
			
		||||
#   put *.m4 files in new gnulib/m4/ dir
 | 
			
		||||
#   put *.[ch] files in new gnulib/lib/ dir
 | 
			
		||||
#   import gnulib tests in new gnulib/tests/ dir
 | 
			
		||||
gnulib_name=libgnu
 | 
			
		||||
m4_base=gnulib/m4
 | 
			
		||||
source_base=gnulib/lib
 | 
			
		||||
tests_base=gnulib/tests
 | 
			
		||||
gnulib_tool_option_extras="\
 | 
			
		||||
 --lgpl=2\
 | 
			
		||||
 --with-tests\
 | 
			
		||||
 --makefile-name=gnulib.mk\
 | 
			
		||||
 --avoid=pt_chown\
 | 
			
		||||
 --avoid=lock-tests\
 | 
			
		||||
"
 | 
			
		||||
local_gl_dir=gnulib/local
 | 
			
		||||
 | 
			
		||||
# Convince bootstrap to use multiple m4 directories.
 | 
			
		||||
: ${ACLOCAL=aclocal}
 | 
			
		||||
ACLOCAL="$ACLOCAL -I m4"
 | 
			
		||||
export ACLOCAL
 | 
			
		||||
 | 
			
		||||
# Build prerequisites
 | 
			
		||||
# Note that some of these programs are only required for 'make dist' to
 | 
			
		||||
# succeed from a fresh git checkout; not all of these programs are
 | 
			
		||||
# required to run 'make dist' on a tarball.  As a special case, we want
 | 
			
		||||
# to require the equivalent of the Fedora python-devel package, but
 | 
			
		||||
# RHEL 5 lacks the witness python-config package; we hack around that
 | 
			
		||||
# old environment below.
 | 
			
		||||
buildreq="\
 | 
			
		||||
autoconf   2.59
 | 
			
		||||
automake   1.9.6
 | 
			
		||||
autopoint  -
 | 
			
		||||
gettext    0.17
 | 
			
		||||
git        1.5.5
 | 
			
		||||
gzip       -
 | 
			
		||||
libtool    -
 | 
			
		||||
patch      -
 | 
			
		||||
perl       5.5
 | 
			
		||||
pkg-config -
 | 
			
		||||
python-config -
 | 
			
		||||
rpcgen     -
 | 
			
		||||
tar        -
 | 
			
		||||
xmllint	   -
 | 
			
		||||
xsltproc   -
 | 
			
		||||
"
 | 
			
		||||
# Use rpm as a fallback to bypass the bootstrap probe for python-config,
 | 
			
		||||
# for the sake of RHEL 5; without requiring it on newer systems that
 | 
			
		||||
# have python-config to begin with.
 | 
			
		||||
if `(${PYTHON_CONFIG-python-config} --version;
 | 
			
		||||
     test $? -lt 126 || rpm -q python-devel) >/dev/null 2>&1`; then
 | 
			
		||||
  PYTHON_CONFIG=true
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Automake requires that ChangeLog and AUTHORS exist.
 | 
			
		||||
touch AUTHORS ChangeLog || exit 1
 | 
			
		||||
 | 
			
		||||
# Override bootstrap's list - we don't use mdate-sh or texinfo.tex.
 | 
			
		||||
gnulib_extra_files="
 | 
			
		||||
        $build_aux/install-sh
 | 
			
		||||
        $build_aux/depcomp
 | 
			
		||||
        $build_aux/config.guess
 | 
			
		||||
        $build_aux/config.sub
 | 
			
		||||
        doc/INSTALL
 | 
			
		||||
"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
bootstrap_epilogue()
 | 
			
		||||
{
 | 
			
		||||
  # Change paths in gnulib/tests/gnulib.mk from "../../.." to "../..",
 | 
			
		||||
  # then ensure that gnulib/tests/Makefile.in is up-to-date.
 | 
			
		||||
  m=gnulib/tests/gnulib.mk
 | 
			
		||||
  sed 's,\.\./\.\./\.\.,../..,g' $m > $m-t
 | 
			
		||||
  mv -f $m-t $m
 | 
			
		||||
  ${AUTOMAKE-automake} gnulib/tests/Makefile
 | 
			
		||||
}
 | 
			
		||||
@@ -1,14 +0,0 @@
 | 
			
		||||
# define variables
 | 
			
		||||
 | 
			
		||||
top_srcdir = @top_srcdir@
 | 
			
		||||
top_builddir = @top_builddir@
 | 
			
		||||
FLAKE8 = @flake8_path@
 | 
			
		||||
BLACK = @black_path@
 | 
			
		||||
RUNUTF8 = @runutf8@
 | 
			
		||||
PYTHON = @PYTHON3@
 | 
			
		||||
GREP = @GREP@
 | 
			
		||||
SED = @SED@
 | 
			
		||||
AWK = @AWK@
 | 
			
		||||
 | 
			
		||||
# include syntax-check.mk file
 | 
			
		||||
include $(top_srcdir)/build-aux/syntax-check.mk
 | 
			
		||||
@@ -1,127 +0,0 @@
 | 
			
		||||
## Copyright (C) 2009-2010, 2013 Red Hat, Inc.
 | 
			
		||||
##
 | 
			
		||||
## This library is free software; you can redistribute it and/or
 | 
			
		||||
## modify it under the terms of the GNU Lesser General Public
 | 
			
		||||
## License as published by the Free Software Foundation; either
 | 
			
		||||
## version 2.1 of the License, or (at your option) any later version.
 | 
			
		||||
##
 | 
			
		||||
## This library is distributed in the hope that it will be useful,
 | 
			
		||||
## but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
## Lesser General Public License for more details.
 | 
			
		||||
##
 | 
			
		||||
## You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
## License along with this library.  If not, see
 | 
			
		||||
## <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Generated by running the following on current Gentoo:
 | 
			
		||||
#
 | 
			
		||||
#  nm -D --defined-only --without-symbol-versions /lib64/libc.so.6 \
 | 
			
		||||
#      | grep '_r$' \
 | 
			
		||||
#      | awk '{print $3}' \
 | 
			
		||||
#      | grep -v -e '^_' -e 'readdir' \
 | 
			
		||||
#      | sort -u \
 | 
			
		||||
#      | sed -s 's/_r$//'
 | 
			
		||||
#
 | 
			
		||||
# readdir*() is safe as long as each DIR * instance is only used by one thread.
 | 
			
		||||
#
 | 
			
		||||
# Also manually add in all inet_* functions some of which
 | 
			
		||||
# are not threadsafe and do not have _r variants. They are
 | 
			
		||||
# all deprecated in favour of getnameinfo/getaddrinfo
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
NON_REENTRANT =
 | 
			
		||||
NON_REENTRANT += asctime
 | 
			
		||||
NON_REENTRANT += ctime
 | 
			
		||||
NON_REENTRANT += drand48
 | 
			
		||||
NON_REENTRANT += ecvt
 | 
			
		||||
NON_REENTRANT += erand48
 | 
			
		||||
NON_REENTRANT += ether_aton
 | 
			
		||||
NON_REENTRANT += ether_ntoa
 | 
			
		||||
NON_REENTRANT += fcvt
 | 
			
		||||
NON_REENTRANT += fgetgrent
 | 
			
		||||
NON_REENTRANT += fgetpwent
 | 
			
		||||
NON_REENTRANT += fgetsgent
 | 
			
		||||
NON_REENTRANT += fgetspent
 | 
			
		||||
NON_REENTRANT += getaliasbyname
 | 
			
		||||
NON_REENTRANT += getaliasent
 | 
			
		||||
NON_REENTRANT += getdate
 | 
			
		||||
NON_REENTRANT += getgrent
 | 
			
		||||
NON_REENTRANT += getgrgid
 | 
			
		||||
NON_REENTRANT += getgrnam
 | 
			
		||||
NON_REENTRANT += gethostbyaddr
 | 
			
		||||
NON_REENTRANT += gethostbyname2
 | 
			
		||||
NON_REENTRANT += gethostbyname
 | 
			
		||||
NON_REENTRANT += gethostent
 | 
			
		||||
NON_REENTRANT += getlogin
 | 
			
		||||
NON_REENTRANT += getmntent
 | 
			
		||||
NON_REENTRANT += getnetbyaddr
 | 
			
		||||
NON_REENTRANT += getnetbyname
 | 
			
		||||
NON_REENTRANT += getnetent
 | 
			
		||||
NON_REENTRANT += getnetgrent
 | 
			
		||||
NON_REENTRANT += getprotobyname
 | 
			
		||||
NON_REENTRANT += getprotobynumber
 | 
			
		||||
NON_REENTRANT += getprotoent
 | 
			
		||||
NON_REENTRANT += getpwent
 | 
			
		||||
NON_REENTRANT += getpwnam
 | 
			
		||||
NON_REENTRANT += getpwuid
 | 
			
		||||
NON_REENTRANT += getrpcbyname
 | 
			
		||||
NON_REENTRANT += getrpcbynumber
 | 
			
		||||
NON_REENTRANT += getrpcent
 | 
			
		||||
NON_REENTRANT += getservbyname
 | 
			
		||||
NON_REENTRANT += getservbyport
 | 
			
		||||
NON_REENTRANT += getservent
 | 
			
		||||
NON_REENTRANT += getsgent
 | 
			
		||||
NON_REENTRANT += getsgnam
 | 
			
		||||
NON_REENTRANT += getspent
 | 
			
		||||
NON_REENTRANT += getspnam
 | 
			
		||||
NON_REENTRANT += getutent
 | 
			
		||||
NON_REENTRANT += getutid
 | 
			
		||||
NON_REENTRANT += getutline
 | 
			
		||||
NON_REENTRANT += gmtime
 | 
			
		||||
NON_REENTRANT += hcreate
 | 
			
		||||
NON_REENTRANT += hdestroy
 | 
			
		||||
NON_REENTRANT += hsearch
 | 
			
		||||
NON_REENTRANT += initstate
 | 
			
		||||
NON_REENTRANT += jrand48
 | 
			
		||||
NON_REENTRANT += lcong48
 | 
			
		||||
NON_REENTRANT += localtime
 | 
			
		||||
NON_REENTRANT += lrand48
 | 
			
		||||
NON_REENTRANT += mrand48
 | 
			
		||||
NON_REENTRANT += nrand48
 | 
			
		||||
NON_REENTRANT += ptsname
 | 
			
		||||
NON_REENTRANT += qecvt
 | 
			
		||||
NON_REENTRANT += qfcvt
 | 
			
		||||
NON_REENTRANT += rand
 | 
			
		||||
NON_REENTRANT += random
 | 
			
		||||
NON_REENTRANT += seed48
 | 
			
		||||
NON_REENTRANT += setstate
 | 
			
		||||
NON_REENTRANT += sgetsgent
 | 
			
		||||
NON_REENTRANT += sgetspent
 | 
			
		||||
NON_REENTRANT += srand48
 | 
			
		||||
NON_REENTRANT += srandom
 | 
			
		||||
NON_REENTRANT += strerror
 | 
			
		||||
NON_REENTRANT += strtok
 | 
			
		||||
NON_REENTRANT += tmpnam
 | 
			
		||||
NON_REENTRANT += ttyname
 | 
			
		||||
NON_REENTRANT += twalk
 | 
			
		||||
NON_REENTRANT += inet_addr
 | 
			
		||||
NON_REENTRANT += inet_aton
 | 
			
		||||
NON_REENTRANT += inet_lnaof
 | 
			
		||||
NON_REENTRANT += inet_makeaddr
 | 
			
		||||
NON_REENTRANT += inet_netof
 | 
			
		||||
NON_REENTRANT += inet_network
 | 
			
		||||
NON_REENTRANT += inet_nsap_addr
 | 
			
		||||
NON_REENTRANT += inet_nsap_ntoa
 | 
			
		||||
NON_REENTRANT += inet_ntoa
 | 
			
		||||
NON_REENTRANT += inet_ntop
 | 
			
		||||
NON_REENTRANT += inet_pton
 | 
			
		||||
 | 
			
		||||
# Separate two nothings by space to get one space in a variable
 | 
			
		||||
space =
 | 
			
		||||
space +=
 | 
			
		||||
# The space needs to be in a variable otherwise it would be ignored.
 | 
			
		||||
# And there must be no spaces around the commas because they would
 | 
			
		||||
# not be ignored, logically.
 | 
			
		||||
NON_REENTRANT_RE=$(subst $(space),|,$(NON_REENTRANT))
 | 
			
		||||
							
								
								
									
										71
									
								
								build-aux/augeas-gentest.pl
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										71
									
								
								build-aux/augeas-gentest.pl
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,71 @@
 | 
			
		||||
#!/usr/bin/perl
 | 
			
		||||
#
 | 
			
		||||
# augeas-gentest.pl: Generate an augeas test file, from an
 | 
			
		||||
#                    example config file + test file template
 | 
			
		||||
#
 | 
			
		||||
# This library is free software; you can redistribute it and/or
 | 
			
		||||
# modify it under the terms of the GNU Lesser General Public
 | 
			
		||||
# License as published by the Free Software Foundation; either
 | 
			
		||||
# version 2.1 of the License, or (at your option) any later version.
 | 
			
		||||
#
 | 
			
		||||
# This library is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# Lesser General Public License for more details.
 | 
			
		||||
#
 | 
			
		||||
# You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
# License along with this library.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
#
 | 
			
		||||
# Authors:
 | 
			
		||||
#     Daniel P. Berrange <berrange@redhat.com>
 | 
			
		||||
 | 
			
		||||
use strict;
 | 
			
		||||
use warnings;
 | 
			
		||||
 | 
			
		||||
die "syntax: $0 CONFIG TEMPLATE AUGTEST\n" unless @ARGV == 3;
 | 
			
		||||
 | 
			
		||||
my $config = shift @ARGV;
 | 
			
		||||
my $template = shift @ARGV;
 | 
			
		||||
my $augtest = shift @ARGV;
 | 
			
		||||
 | 
			
		||||
open AUGTEST, ">", $augtest or die "cannot create $augtest: $!";
 | 
			
		||||
 | 
			
		||||
$SIG{__DIE__} = sub {
 | 
			
		||||
    unlink $augtest;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
open CONFIG, "<", $config or die "cannot read $config: $!";
 | 
			
		||||
open TEMPLATE, "<", $template or die "cannot read $template: $!";
 | 
			
		||||
 | 
			
		||||
my $group = 0;
 | 
			
		||||
while (<TEMPLATE>) {
 | 
			
		||||
    if (/::CONFIG::/) {
 | 
			
		||||
        my $group = 0;
 | 
			
		||||
        print AUGTEST "  let conf = \"";
 | 
			
		||||
        while (<CONFIG>) {
 | 
			
		||||
            if (/^#\w/) {
 | 
			
		||||
                s/^#//;
 | 
			
		||||
                s/\"/\\\"/g;
 | 
			
		||||
                print AUGTEST $_;
 | 
			
		||||
                $group = /\[\s$/;
 | 
			
		||||
            } elsif ($group) {
 | 
			
		||||
                s/\"/\\\"/g;
 | 
			
		||||
                if (/#\s*\]/) {
 | 
			
		||||
                    $group = 0;
 | 
			
		||||
                }
 | 
			
		||||
                if (/^#/) {
 | 
			
		||||
                    s/^#//;
 | 
			
		||||
                    print AUGTEST $_;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        print AUGTEST "\"\n";
 | 
			
		||||
    } else {
 | 
			
		||||
        print AUGTEST $_;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
close TEMPLATE;
 | 
			
		||||
close CONFIG;
 | 
			
		||||
close AUGTEST or die "cannot save $augtest: $!";
 | 
			
		||||
@@ -1,162 +0,0 @@
 | 
			
		||||
#!/usr/bin/env perl
 | 
			
		||||
#
 | 
			
		||||
# check-spacing.pl: Report any usage of 'function (..args..)'
 | 
			
		||||
# Also check for other syntax issues, such as correct use of ';'
 | 
			
		||||
#
 | 
			
		||||
# This library is free software; you can redistribute it and/or
 | 
			
		||||
# modify it under the terms of the GNU Lesser General Public
 | 
			
		||||
# License as published by the Free Software Foundation; either
 | 
			
		||||
# version 2.1 of the License, or (at your option) any later version.
 | 
			
		||||
#
 | 
			
		||||
# This library is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# Lesser General Public License for more details.
 | 
			
		||||
#
 | 
			
		||||
# You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
# License along with this library.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
use strict;
 | 
			
		||||
use warnings;
 | 
			
		||||
 | 
			
		||||
my $ret = 0;
 | 
			
		||||
my $incomment = 0;
 | 
			
		||||
 | 
			
		||||
foreach my $file (@ARGV) {
 | 
			
		||||
    open FILE, $file;
 | 
			
		||||
 | 
			
		||||
    while (defined (my $line = <FILE>)) {
 | 
			
		||||
        my $data = $line;
 | 
			
		||||
        # For temporary modifications
 | 
			
		||||
        my $tmpdata;
 | 
			
		||||
 | 
			
		||||
        # Kill any quoted , ; = or "
 | 
			
		||||
        $data =~ s/'[";,=]'/'X'/g;
 | 
			
		||||
 | 
			
		||||
        # Kill any quoted strings
 | 
			
		||||
        $data =~ s,"(?:[^\\\"]|\\.)*","XXX",g;
 | 
			
		||||
 | 
			
		||||
        next if $data =~ /^#/;
 | 
			
		||||
 | 
			
		||||
        # Kill contents of multi-line comments
 | 
			
		||||
        # and detect end of multi-line comments
 | 
			
		||||
        if ($incomment) {
 | 
			
		||||
            if ($data =~ m,\*/,) {
 | 
			
		||||
                $incomment = 0;
 | 
			
		||||
                $data =~ s,^.*\*/,*/,;
 | 
			
		||||
            } else {
 | 
			
		||||
                $data = "";
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # Kill single line comments, and detect
 | 
			
		||||
        # start of multi-line comments
 | 
			
		||||
        if ($data =~ m,/\*.*\*/,) {
 | 
			
		||||
            $data =~ s,/\*.*\*/,/* */,;
 | 
			
		||||
        } elsif ($data =~ m,/\*,) {
 | 
			
		||||
            $incomment = 1;
 | 
			
		||||
            $data =~ s,/\*.*,/*,;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # We need to match things like
 | 
			
		||||
        #
 | 
			
		||||
        #  int foo (int bar, bool wizz);
 | 
			
		||||
        #  foo (bar, wizz);
 | 
			
		||||
        #
 | 
			
		||||
        # but not match things like:
 | 
			
		||||
        #
 | 
			
		||||
        #  typedef int (*foo)(bar wizz)
 | 
			
		||||
        #
 | 
			
		||||
        # we can't do this (efficiently) without
 | 
			
		||||
        # missing things like
 | 
			
		||||
        #
 | 
			
		||||
        #  foo (*bar, wizz);
 | 
			
		||||
        #
 | 
			
		||||
        # We also don't want to spoil the $data so it can be used
 | 
			
		||||
        # later on.
 | 
			
		||||
        $tmpdata = $data;
 | 
			
		||||
        while ($tmpdata =~ /(\w+)\s\((?!\*)/) {
 | 
			
		||||
            my $kw = $1;
 | 
			
		||||
 | 
			
		||||
            # Allow space after keywords only
 | 
			
		||||
            if ($kw =~ /^(?:if|for|while|switch|return)$/) {
 | 
			
		||||
                $tmpdata =~ s/(?:$kw\s\()/XXX(/;
 | 
			
		||||
            } else {
 | 
			
		||||
                print "Whitespace after non-keyword:\n";
 | 
			
		||||
                print "$file:$.: $line";
 | 
			
		||||
                $ret = 1;
 | 
			
		||||
                last;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # Require whitespace immediately after keywords
 | 
			
		||||
        if ($data =~ /\b(?:if|for|while|switch|return)\(/) {
 | 
			
		||||
            print "No whitespace after keyword:\n";
 | 
			
		||||
            print "$file:$.: $line";
 | 
			
		||||
            $ret = 1;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # Forbid whitespace between )( of a function typedef
 | 
			
		||||
        if ($data =~ /\(\*\w+\)\s+\(/) {
 | 
			
		||||
            print "Whitespace between ')' and '(':\n";
 | 
			
		||||
            print "$file:$.: $line";
 | 
			
		||||
            $ret = 1;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # Forbid whitespace following ( or prior to )
 | 
			
		||||
        # but allow whitespace before ) on a single line
 | 
			
		||||
        # (optionally followed by a semicolon)
 | 
			
		||||
        if (($data =~ /\s\)/ && not $data =~ /^\s+\);?$/) ||
 | 
			
		||||
            $data =~ /\((?!$)\s/) {
 | 
			
		||||
            print "Whitespace after '(' or before ')':\n";
 | 
			
		||||
            print "$file:$.: $line";
 | 
			
		||||
            $ret = 1;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # Forbid whitespace before ";" or ",". Things like below are allowed:
 | 
			
		||||
        #
 | 
			
		||||
        # 1) The expression is empty for "for" loop. E.g.
 | 
			
		||||
        #   for (i = 0; ; i++)
 | 
			
		||||
        #
 | 
			
		||||
        # 2) An empty statement. E.g.
 | 
			
		||||
        #   while (write(statuswrite, &status, 1) == -1 &&
 | 
			
		||||
        #          errno == EINTR)
 | 
			
		||||
        #       ;
 | 
			
		||||
        #
 | 
			
		||||
        if ($data =~ /\s[;,]/) {
 | 
			
		||||
            unless ($data =~ /\S; ; / ||
 | 
			
		||||
                    $data =~ /^\s+;/) {
 | 
			
		||||
                print "Whitespace before semicolon or comma:\n";
 | 
			
		||||
                print "$file:$.: $line";
 | 
			
		||||
                $ret = 1;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # Require EOL, macro line continuation, or whitespace after ";".
 | 
			
		||||
        # Allow "for (;;)" as an exception.
 | 
			
		||||
        if ($data =~ /;[^	 \\\n;)]/) {
 | 
			
		||||
            print "Invalid character after semicolon:\n";
 | 
			
		||||
            print "$file:$.: $line";
 | 
			
		||||
            $ret = 1;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # Require EOL, space, or enum/struct end after comma.
 | 
			
		||||
        if ($data =~ /,[^ \\\n)}]/) {
 | 
			
		||||
            print "Invalid character after comma:\n";
 | 
			
		||||
            print "$file:$.: $line";
 | 
			
		||||
            $ret = 1;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        # Require spaces around assignment '=', compounds and '=='
 | 
			
		||||
        if ($data =~ /[^ ]\b[!<>&|\-+*\/%\^=]?=/ ||
 | 
			
		||||
            $data =~ /=[^= \\\n]/) {
 | 
			
		||||
            print "Spacing around '=' or '==':\n";
 | 
			
		||||
            print "$file:$.: $line";
 | 
			
		||||
            $ret = 1;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    close FILE;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
exit $ret;
 | 
			
		||||
@@ -1,76 +0,0 @@
 | 
			
		||||
# Skip syntax-check if not building from git because we get the list of files
 | 
			
		||||
# to check using git commands and it fails if we are not in git repository.
 | 
			
		||||
if git and tests_enabled[0]
 | 
			
		||||
  flake8_path = ''
 | 
			
		||||
  if flake8_prog.found()
 | 
			
		||||
    flake8_path = flake8_prog.full_path()
 | 
			
		||||
  endif
 | 
			
		||||
  black_path = ''
 | 
			
		||||
  if black_prog.found()
 | 
			
		||||
    black_path = black_prog.full_path()
 | 
			
		||||
  endif
 | 
			
		||||
 | 
			
		||||
  if host_machine.system() == 'freebsd' or host_machine.system() == 'darwin'
 | 
			
		||||
    make_prog = find_program('gmake')
 | 
			
		||||
    sed_prog = find_program('gsed')
 | 
			
		||||
  else
 | 
			
		||||
    make_prog = find_program('make')
 | 
			
		||||
    sed_prog = find_program('sed')
 | 
			
		||||
  endif
 | 
			
		||||
 | 
			
		||||
  if host_machine.system() == 'freebsd'
 | 
			
		||||
    grep_prog = find_program('grep')
 | 
			
		||||
    grep_cmd = run_command(grep_prog, '--version', check: true)
 | 
			
		||||
    if grep_cmd.stdout().startswith('grep (BSD grep')
 | 
			
		||||
      grep_prog = find_program('/usr/local/bin/grep', required: false)
 | 
			
		||||
      if not grep_prog.found()
 | 
			
		||||
        error('GNU grep not found')
 | 
			
		||||
      endif
 | 
			
		||||
    endif
 | 
			
		||||
  elif host_machine.system() == 'darwin'
 | 
			
		||||
    grep_prog = find_program('ggrep')
 | 
			
		||||
  else
 | 
			
		||||
    grep_prog = find_program('grep')
 | 
			
		||||
  endif
 | 
			
		||||
 | 
			
		||||
  awk_prog = find_program('awk')
 | 
			
		||||
 | 
			
		||||
  syntax_check_conf = configuration_data({
 | 
			
		||||
    'top_srcdir': meson.project_source_root(),
 | 
			
		||||
    'top_builddir': meson.project_build_root(),
 | 
			
		||||
    'flake8_path': flake8_path,
 | 
			
		||||
    'black_path': black_path,
 | 
			
		||||
    'runutf8': ' '.join(runutf8),
 | 
			
		||||
    'PYTHON3': python3_prog.full_path(),
 | 
			
		||||
    'GREP': grep_prog.full_path(),
 | 
			
		||||
    'SED': sed_prog.full_path(),
 | 
			
		||||
    'AWK': awk_prog.full_path(),
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  configure_file(
 | 
			
		||||
    input: 'Makefile.in',
 | 
			
		||||
    output: '@BASENAME@',
 | 
			
		||||
    configuration: syntax_check_conf,
 | 
			
		||||
  )
 | 
			
		||||
 | 
			
		||||
  rc = run_command(
 | 
			
		||||
    'sed', '-n',
 | 
			
		||||
    's/^sc_\\([a-zA-Z0-9_-]*\\):.*/\\1/p',
 | 
			
		||||
    meson.current_source_dir() / 'syntax-check.mk',
 | 
			
		||||
    check: true,
 | 
			
		||||
  )
 | 
			
		||||
 | 
			
		||||
  sc_tests = rc.stdout().strip().split()
 | 
			
		||||
 | 
			
		||||
  foreach target : sc_tests
 | 
			
		||||
    test(
 | 
			
		||||
      target,
 | 
			
		||||
      make_prog,
 | 
			
		||||
      args: [ '-C', meson.current_build_dir(), 'sc_@0@'.format(target) ],
 | 
			
		||||
      depends: [
 | 
			
		||||
        potfiles_dep,
 | 
			
		||||
      ],
 | 
			
		||||
      suite: 'syntax-check',
 | 
			
		||||
    )
 | 
			
		||||
  endforeach
 | 
			
		||||
endif
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										816
									
								
								cfg.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										816
									
								
								cfg.mk
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,816 @@
 | 
			
		||||
# Customize Makefile.maint.                           -*- makefile -*-
 | 
			
		||||
# Copyright (C) 2008-2012 Red Hat, Inc.
 | 
			
		||||
# Copyright (C) 2003-2008 Free Software Foundation, Inc.
 | 
			
		||||
 | 
			
		||||
# This program is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This program is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
# GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with this program.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
# Use alpha.gnu.org for alpha and beta releases.
 | 
			
		||||
# Use ftp.gnu.org for major releases.
 | 
			
		||||
gnu_ftp_host-alpha = alpha.gnu.org
 | 
			
		||||
gnu_ftp_host-beta = alpha.gnu.org
 | 
			
		||||
gnu_ftp_host-major = ftp.gnu.org
 | 
			
		||||
gnu_rel_host = $(gnu_ftp_host-$(RELEASE_TYPE))
 | 
			
		||||
 | 
			
		||||
url_dir_list = \
 | 
			
		||||
  ftp://$(gnu_rel_host)/gnu/coreutils
 | 
			
		||||
 | 
			
		||||
# We use .gnulib, not gnulib.
 | 
			
		||||
gnulib_dir = $(srcdir)/.gnulib
 | 
			
		||||
 | 
			
		||||
# List of additional files that we want to pick up in our POTFILES.in
 | 
			
		||||
# This is all gnulib files, as well as generated files for RPC code.
 | 
			
		||||
generated_files = \
 | 
			
		||||
  $(srcdir)/daemon/*_dispatch.h \
 | 
			
		||||
  $(srcdir)/src/remote/*_client_bodies.h \
 | 
			
		||||
  $(srcdir)/src/remote/*_protocol.[ch] \
 | 
			
		||||
  $(srcdir)/gnulib/lib/*.[ch]
 | 
			
		||||
 | 
			
		||||
# We haven't converted all scripts to using gnulib's init.sh yet.
 | 
			
		||||
_test_script_regex = \<\(init\|test-lib\)\.sh\>
 | 
			
		||||
 | 
			
		||||
# Tests not to run as part of "make distcheck".
 | 
			
		||||
local-checks-to-skip =			\
 | 
			
		||||
  changelog-check			\
 | 
			
		||||
  makefile-check			\
 | 
			
		||||
  makefile_path_separator_check		\
 | 
			
		||||
  patch-check				\
 | 
			
		||||
  sc_GPL_version			\
 | 
			
		||||
  sc_always_defined_macros		\
 | 
			
		||||
  sc_cast_of_alloca_return_value	\
 | 
			
		||||
  sc_cross_check_PATH_usage_in_tests	\
 | 
			
		||||
  sc_dd_max_sym_length			\
 | 
			
		||||
  sc_error_exit_success			\
 | 
			
		||||
  sc_file_system			\
 | 
			
		||||
  sc_immutable_NEWS			\
 | 
			
		||||
  sc_makefile_path_separator_check	\
 | 
			
		||||
  sc_obsolete_symbols			\
 | 
			
		||||
  sc_prohibit_S_IS_definition		\
 | 
			
		||||
  sc_prohibit_atoi_atof			\
 | 
			
		||||
  sc_prohibit_hash_without_use		\
 | 
			
		||||
  sc_prohibit_jm_in_m4			\
 | 
			
		||||
  sc_prohibit_quote_without_use		\
 | 
			
		||||
  sc_prohibit_quotearg_without_use	\
 | 
			
		||||
  sc_prohibit_stat_st_blocks		\
 | 
			
		||||
  sc_root_tests				\
 | 
			
		||||
  sc_space_tab				\
 | 
			
		||||
  sc_sun_os_names			\
 | 
			
		||||
  sc_system_h_headers			\
 | 
			
		||||
  sc_texinfo_acronym			\
 | 
			
		||||
  sc_tight_scope			\
 | 
			
		||||
  sc_two_space_separator_in_usage	\
 | 
			
		||||
  sc_error_message_uppercase		\
 | 
			
		||||
  sc_program_name			\
 | 
			
		||||
  sc_require_test_exit_idiom		\
 | 
			
		||||
  sc_makefile_check			\
 | 
			
		||||
  sc_useless_cpp_parens
 | 
			
		||||
 | 
			
		||||
# Most developers don't run 'make distcheck'.  We want the official
 | 
			
		||||
# dist to be secure, but don't want to penalize other developers
 | 
			
		||||
# using a distro that has not yet picked up the automake fix.
 | 
			
		||||
# FIXME remove this ifeq (making the syntax check unconditional)
 | 
			
		||||
# once fixed automake (1.11.6 or 1.12.2+) is more common.
 | 
			
		||||
ifeq ($(filter dist%, $(MAKECMDGOALS)), )
 | 
			
		||||
local-checks-to-skip +=	sc_vulnerable_makefile_CVE-2012-3386
 | 
			
		||||
else
 | 
			
		||||
distdir: sc_vulnerable_makefile_CVE-2012-3386.z
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
# Files that should never cause syntax check failures.
 | 
			
		||||
VC_LIST_ALWAYS_EXCLUDE_REGEX = \
 | 
			
		||||
  (^(HACKING|docs/(news\.html\.in|.*\.patch))|\.po)$$
 | 
			
		||||
 | 
			
		||||
# Functions like free() that are no-ops on NULL arguments.
 | 
			
		||||
useless_free_options =				\
 | 
			
		||||
  --name=VIR_FREE				\
 | 
			
		||||
  --name=qemuCapsFree				\
 | 
			
		||||
  --name=qemuMigrationCookieFree                \
 | 
			
		||||
  --name=qemuMigrationCookieGraphicsFree        \
 | 
			
		||||
  --name=sexpr_free				\
 | 
			
		||||
  --name=virBandwidthDefFree			\
 | 
			
		||||
  --name=virBitmapFree                          \
 | 
			
		||||
  --name=virCPUDefFree				\
 | 
			
		||||
  --name=virCapabilitiesFree			\
 | 
			
		||||
  --name=virCapabilitiesFreeGuest		\
 | 
			
		||||
  --name=virCapabilitiesFreeGuestDomain		\
 | 
			
		||||
  --name=virCapabilitiesFreeGuestFeature	\
 | 
			
		||||
  --name=virCapabilitiesFreeGuestMachine	\
 | 
			
		||||
  --name=virCapabilitiesFreeHostNUMACell	\
 | 
			
		||||
  --name=virCapabilitiesFreeMachines		\
 | 
			
		||||
  --name=virCgroupFree				\
 | 
			
		||||
  --name=virCommandFree				\
 | 
			
		||||
  --name=virConfFreeList			\
 | 
			
		||||
  --name=virConfFreeValue			\
 | 
			
		||||
  --name=virDomainActualNetDefFree		\
 | 
			
		||||
  --name=virDomainChrDefFree			\
 | 
			
		||||
  --name=virDomainChrSourceDefFree		\
 | 
			
		||||
  --name=virDomainControllerDefFree		\
 | 
			
		||||
  --name=virDomainDefFree			\
 | 
			
		||||
  --name=virDomainDeviceDefFree			\
 | 
			
		||||
  --name=virDomainDiskDefFree			\
 | 
			
		||||
  --name=virDomainEventCallbackListFree		\
 | 
			
		||||
  --name=virDomainEventFree			\
 | 
			
		||||
  --name=virDomainEventQueueFree		\
 | 
			
		||||
  --name=virDomainEventStateFree		\
 | 
			
		||||
  --name=virDomainFSDefFree			\
 | 
			
		||||
  --name=virDomainGraphicsDefFree		\
 | 
			
		||||
  --name=virDomainHostdevDefFree		\
 | 
			
		||||
  --name=virDomainInputDefFree			\
 | 
			
		||||
  --name=virDomainNetDefFree			\
 | 
			
		||||
  --name=virDomainObjFree			\
 | 
			
		||||
  --name=virDomainSmartcardDefFree		\
 | 
			
		||||
  --name=virDomainSnapshotDefFree		\
 | 
			
		||||
  --name=virDomainSnapshotObjFree		\
 | 
			
		||||
  --name=virDomainSoundDefFree			\
 | 
			
		||||
  --name=virDomainVideoDefFree			\
 | 
			
		||||
  --name=virDomainWatchdogDefFree		\
 | 
			
		||||
  --name=virFileDirectFdFree			\
 | 
			
		||||
  --name=virHashFree				\
 | 
			
		||||
  --name=virInterfaceDefFree			\
 | 
			
		||||
  --name=virInterfaceIpDefFree			\
 | 
			
		||||
  --name=virInterfaceObjFree			\
 | 
			
		||||
  --name=virInterfaceProtocolDefFree		\
 | 
			
		||||
  --name=virJSONValueFree			\
 | 
			
		||||
  --name=virLastErrFreeData			\
 | 
			
		||||
  --name=virNetMessageFree                      \
 | 
			
		||||
  --name=virNetServerMDNSFree                   \
 | 
			
		||||
  --name=virNetServerMDNSEntryFree              \
 | 
			
		||||
  --name=virNetServerMDNSGroupFree              \
 | 
			
		||||
  --name=virNWFilterDefFree			\
 | 
			
		||||
  --name=virNWFilterEntryFree			\
 | 
			
		||||
  --name=virNWFilterHashTableFree		\
 | 
			
		||||
  --name=virNWFilterIPAddrLearnReqFree		\
 | 
			
		||||
  --name=virNWFilterIncludeDefFree		\
 | 
			
		||||
  --name=virNWFilterObjFree			\
 | 
			
		||||
  --name=virNWFilterRuleDefFree			\
 | 
			
		||||
  --name=virNWFilterRuleInstFree		\
 | 
			
		||||
  --name=virNetworkDefFree			\
 | 
			
		||||
  --name=virNetworkObjFree			\
 | 
			
		||||
  --name=virNodeDeviceDefFree			\
 | 
			
		||||
  --name=virNodeDeviceObjFree			\
 | 
			
		||||
  --name=virObjectUnref                         \
 | 
			
		||||
  --name=virObjectFreeCallback                  \
 | 
			
		||||
  --name=virSecretDefFree			\
 | 
			
		||||
  --name=virStorageEncryptionFree		\
 | 
			
		||||
  --name=virStorageEncryptionSecretFree		\
 | 
			
		||||
  --name=virStorageFileFreeMetadata		\
 | 
			
		||||
  --name=virStoragePoolDefFree			\
 | 
			
		||||
  --name=virStoragePoolObjFree			\
 | 
			
		||||
  --name=virStoragePoolSourceFree		\
 | 
			
		||||
  --name=virStorageVolDefFree			\
 | 
			
		||||
  --name=virThreadPoolFree			\
 | 
			
		||||
  --name=xmlBufferFree				\
 | 
			
		||||
  --name=xmlFree				\
 | 
			
		||||
  --name=xmlFreeDoc				\
 | 
			
		||||
  --name=xmlFreeNode				\
 | 
			
		||||
  --name=xmlXPathFreeContext			\
 | 
			
		||||
  --name=xmlXPathFreeObject
 | 
			
		||||
 | 
			
		||||
# The following template was generated by this command:
 | 
			
		||||
# make ID && aid free|grep '^vi'|sed 's/ .*//;s/^/#   /'
 | 
			
		||||
# N virBufferFreeAndReset
 | 
			
		||||
# y virCPUDefFree
 | 
			
		||||
# y virCapabilitiesFree
 | 
			
		||||
# y virCapabilitiesFreeGuest
 | 
			
		||||
# y virCapabilitiesFreeGuestDomain
 | 
			
		||||
# y virCapabilitiesFreeGuestFeature
 | 
			
		||||
# y virCapabilitiesFreeGuestMachine
 | 
			
		||||
# y virCapabilitiesFreeHostNUMACell
 | 
			
		||||
# y virCapabilitiesFreeMachines
 | 
			
		||||
# N virCapabilitiesFreeNUMAInfo FIXME
 | 
			
		||||
# y virCgroupFree
 | 
			
		||||
# N virConfFree               (diagnoses the "error")
 | 
			
		||||
# y virConfFreeList
 | 
			
		||||
# y virConfFreeValue
 | 
			
		||||
# y virDomainChrDefFree
 | 
			
		||||
# y virDomainControllerDefFree
 | 
			
		||||
# y virDomainDefFree
 | 
			
		||||
# y virDomainDeviceDefFree
 | 
			
		||||
# y virDomainDiskDefFree
 | 
			
		||||
# y virDomainEventCallbackListFree
 | 
			
		||||
# y virDomainEventFree
 | 
			
		||||
# y virDomainEventQueueFree
 | 
			
		||||
# y virDomainFSDefFree
 | 
			
		||||
# n virDomainFree
 | 
			
		||||
# n virDomainFreeName (can't fix -- returns int)
 | 
			
		||||
# y virDomainGraphicsDefFree
 | 
			
		||||
# y virDomainHostdevDefFree
 | 
			
		||||
# y virDomainInputDefFree
 | 
			
		||||
# y virDomainNetDefFree
 | 
			
		||||
# y virDomainObjFree
 | 
			
		||||
# y virDomainSnapshotDefFree
 | 
			
		||||
# n virDomainSnapshotFree (returns int)
 | 
			
		||||
# n virDomainSnapshotFreeName (returns int)
 | 
			
		||||
# y virDomainSnapshotObjFree
 | 
			
		||||
# y virDomainSoundDefFree
 | 
			
		||||
# y virDomainVideoDefFree
 | 
			
		||||
# y virDomainWatchdogDefFree
 | 
			
		||||
# n virDrvNodeGetCellsFreeMemory (returns int)
 | 
			
		||||
# n virDrvNodeGetFreeMemory (returns long long)
 | 
			
		||||
# n virFree - dereferences param
 | 
			
		||||
# n virFreeError
 | 
			
		||||
# n virHashFree (takes 2 args)
 | 
			
		||||
# y virInterfaceDefFree
 | 
			
		||||
# n virInterfaceFree (returns int)
 | 
			
		||||
# n virInterfaceFreeName
 | 
			
		||||
# y virInterfaceIpDefFree
 | 
			
		||||
# y virInterfaceObjFree
 | 
			
		||||
# n virInterfaceObjListFree
 | 
			
		||||
# y virInterfaceProtocolDefFree
 | 
			
		||||
# y virJSONValueFree
 | 
			
		||||
# y virLastErrFreeData
 | 
			
		||||
# y virNWFilterDefFree
 | 
			
		||||
# y virNWFilterEntryFree
 | 
			
		||||
# n virNWFilterFree (returns int)
 | 
			
		||||
# y virNWFilterHashTableFree
 | 
			
		||||
# y virNWFilterIPAddrLearnReqFree
 | 
			
		||||
# y virNWFilterIncludeDefFree
 | 
			
		||||
# n virNWFilterFreeName (returns int)
 | 
			
		||||
# y virNWFilterObjFree
 | 
			
		||||
# n virNWFilterObjListFree FIXME
 | 
			
		||||
# y virNWFilterRuleDefFree
 | 
			
		||||
# n virNWFilterRuleFreeInstanceData (typedef)
 | 
			
		||||
# y virNWFilterRuleInstFree
 | 
			
		||||
# y virNetworkDefFree
 | 
			
		||||
# n virNetworkFree (returns int)
 | 
			
		||||
# n virNetworkFreeName (returns int)
 | 
			
		||||
# y virNetworkObjFree
 | 
			
		||||
# n virNetworkObjListFree FIXME
 | 
			
		||||
# n virNodeDevCapsDefFree FIXME
 | 
			
		||||
# y virNodeDeviceDefFree
 | 
			
		||||
# n virNodeDeviceFree (returns int)
 | 
			
		||||
# y virNodeDeviceObjFree
 | 
			
		||||
# n virNodeDeviceObjListFree FIXME
 | 
			
		||||
# n virNodeGetCellsFreeMemory (returns int)
 | 
			
		||||
# n virNodeGetFreeMemory (returns non-void)
 | 
			
		||||
# y virSecretDefFree
 | 
			
		||||
# n virSecretFree (returns non-void)
 | 
			
		||||
# n virSecretFreeName (2 args)
 | 
			
		||||
# n virSecurityLabelDefFree FIXME
 | 
			
		||||
# n virStorageBackendDiskMakeFreeExtent (returns non-void)
 | 
			
		||||
# y virStorageEncryptionFree
 | 
			
		||||
# y virStorageEncryptionSecretFree
 | 
			
		||||
# n virStorageFreeType (enum)
 | 
			
		||||
# y virStoragePoolDefFree
 | 
			
		||||
# n virStoragePoolFree (returns non-void)
 | 
			
		||||
# n virStoragePoolFreeName (returns non-void)
 | 
			
		||||
# y virStoragePoolObjFree
 | 
			
		||||
# n virStoragePoolObjListFree FIXME
 | 
			
		||||
# y virStoragePoolSourceFree
 | 
			
		||||
# y virStorageVolDefFree
 | 
			
		||||
# n virStorageVolFree (returns non-void)
 | 
			
		||||
# n virStorageVolFreeName (returns non-void)
 | 
			
		||||
# n virStreamFree
 | 
			
		||||
 | 
			
		||||
# Avoid uses of write(2).  Either switch to streams (fwrite), or use
 | 
			
		||||
# the safewrite wrapper.
 | 
			
		||||
sc_avoid_write:
 | 
			
		||||
	@prohibit='\<write *\('						\
 | 
			
		||||
	in_vc_files='\.c$$'						\
 | 
			
		||||
	halt='consider using safewrite instead of write'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# In debug statements, print flags as bitmask and mode_t as octal.
 | 
			
		||||
sc_flags_debug:
 | 
			
		||||
	@prohibit='\<mode=%[0-9.]*[diux]'				\
 | 
			
		||||
	halt='use %o to debug mode_t values'				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
	@prohibit='[Ff]lags=%[0-9.]*l*[diou]'				\
 | 
			
		||||
	halt='use %x to debug flag values'				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Prefer 'unsigned int flags', along with checks for unknown flags.
 | 
			
		||||
# For historical reasons, we are stuck with 'unsigned long flags' in
 | 
			
		||||
# migration, so check for those known 4 instances and no more in public
 | 
			
		||||
# API.  Also check that no flags are marked unused, and 'unsigned' should
 | 
			
		||||
# appear before any declaration of a flags variable (achieved by
 | 
			
		||||
# prohibiting the word prior to the type from ending in anything other
 | 
			
		||||
# than d).  The existence of long long, and of documentation about
 | 
			
		||||
# flags, makes the regex in the third test slightly harder.
 | 
			
		||||
sc_flags_usage:
 | 
			
		||||
	@test "$$(cat $(srcdir)/include/libvirt/libvirt.h.in		\
 | 
			
		||||
	    $(srcdir)/include/libvirt/virterror.h			\
 | 
			
		||||
	    $(srcdir)/include/libvirt/libvirt-qemu.h			\
 | 
			
		||||
	  | grep -c '\(long\|unsigned\) flags')" != 4 &&		\
 | 
			
		||||
	  { echo '$(ME): new API should use "unsigned int flags"' 1>&2;	\
 | 
			
		||||
	    exit 1; } || :
 | 
			
		||||
	@prohibit=' flags ''ATTRIBUTE_UNUSED'				\
 | 
			
		||||
	halt='flags should be checked with virCheckFlags'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
	@prohibit='^[^@]*([^d] (int|long long)|[^dg] long) flags[;,)]'	\
 | 
			
		||||
	halt='flags should be unsigned'					\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Avoid functions that should only be called via macro counterparts.
 | 
			
		||||
sc_prohibit_internal_functions:
 | 
			
		||||
	@prohibit='vir(Free|AllocN?|ReallocN|File(Close|Fclose|Fdopen)) *\(' \
 | 
			
		||||
	halt='use VIR_ macros instead of internal functions'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Avoid raw malloc and free, except in documentation comments.
 | 
			
		||||
sc_prohibit_raw_allocation:
 | 
			
		||||
	@prohibit='^.[^*].*\<((m|c|re)alloc|free) *\([^)]'		\
 | 
			
		||||
	halt='use VIR_ macros from memory.h instead of malloc/free'	\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Avoid functions that can lead to double-close bugs.
 | 
			
		||||
sc_prohibit_close:
 | 
			
		||||
	@prohibit='([^>.]|^)\<[fp]?close *\('				\
 | 
			
		||||
	halt='use VIR_{FORCE_}[F]CLOSE instead of [f]close'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
	@prohibit='\<fdopen *\('					\
 | 
			
		||||
	halt='use VIR_FDOPEN instead of fdopen'				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Prefer virCommand for all child processes.
 | 
			
		||||
sc_prohibit_fork_wrappers:
 | 
			
		||||
	@prohibit='= *\<(fork|popen|system) *\('			\
 | 
			
		||||
	halt='use virCommand for child processes'			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# access with X_OK accepts directories, but we can't exec() those.
 | 
			
		||||
# access with F_OK or R_OK is okay, though.
 | 
			
		||||
sc_prohibit_access_xok:
 | 
			
		||||
	@prohibit='access''(at)? *\(.*X_OK'				\
 | 
			
		||||
	halt='use virFileIsExecutable instead of access''(,X_OK)'	\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Similar to the gnulib maint.mk rule for sc_prohibit_strcmp
 | 
			
		||||
# Use STREQLEN or STRPREFIX rather than comparing strncmp == 0, or != 0.
 | 
			
		||||
snp_ = strncmp *\(.+\)
 | 
			
		||||
sc_prohibit_strncmp:
 | 
			
		||||
	@prohibit='! *strncmp *\(|\<$(snp_) *[!=]=|[!=]= *$(snp_)'	\
 | 
			
		||||
	exclude=':# *define STR(N?EQLEN|PREFIX)\('			\
 | 
			
		||||
	halt='use STREQLEN or STRPREFIX instead of str''ncmp'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# strtol and friends are too easy to misuse
 | 
			
		||||
sc_prohibit_strtol:
 | 
			
		||||
	@prohibit='\bstrto(u?ll?|[ui]max) *\('				\
 | 
			
		||||
	exclude='exempt from syntax-check'				\
 | 
			
		||||
	halt='use virStrToLong_*, not strtol variants'			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
	@prohibit='\bstrto[df] *\('					\
 | 
			
		||||
	exclude='exempt from syntax-check'				\
 | 
			
		||||
	halt='use virStrToDouble, not strtod variants'			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Use virAsprintf rather than as'printf since *strp is undefined on error.
 | 
			
		||||
sc_prohibit_asprintf:
 | 
			
		||||
	@prohibit='\<v?a[s]printf\>'					\
 | 
			
		||||
	halt='use virAsprintf, not as'printf				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Prefer virSetUIDGID.
 | 
			
		||||
sc_prohibit_setuid:
 | 
			
		||||
	@prohibit='\<set(re)?[ug]id\> *\('				\
 | 
			
		||||
	halt='use virSetUIDGID, not raw set*id'				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Use snprintf rather than s'printf, even if buffer is provably large enough,
 | 
			
		||||
# since gnulib has more guarantees for snprintf portability
 | 
			
		||||
sc_prohibit_sprintf:
 | 
			
		||||
	@prohibit='\<[s]printf\>'					\
 | 
			
		||||
	halt='use snprintf, not s'printf				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
sc_prohibit_readlink:
 | 
			
		||||
	@prohibit='\<readlink *\('					\
 | 
			
		||||
	halt='use virFileResolveLink, not readlink'			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
sc_prohibit_gethostname:
 | 
			
		||||
	@prohibit='gethostname *\('					\
 | 
			
		||||
	halt='use virGetHostname, not gethostname'			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
sc_prohibit_gettext_noop:
 | 
			
		||||
	@prohibit='gettext_noop *\('					\
 | 
			
		||||
	halt='use N_, not gettext_noop'					\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
sc_prohibit_VIR_ERR_NO_MEMORY:
 | 
			
		||||
	@prohibit='\<V''IR_ERR_NO_MEMORY\>'				\
 | 
			
		||||
	halt='use virReportOOMError, not V'IR_ERR_NO_MEMORY		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
sc_prohibit_PATH_MAX:
 | 
			
		||||
	@prohibit='\<P''ATH_MAX\>'				\
 | 
			
		||||
	halt='dynamically allocate paths, do not use P'ATH_MAX	\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Use a subshell for each function, to give the optimal warning message.
 | 
			
		||||
include $(srcdir)/Makefile.nonreentrant
 | 
			
		||||
sc_prohibit_nonreentrant:
 | 
			
		||||
	@fail=0 ; \
 | 
			
		||||
	for i in $(NON_REENTRANT) ; \
 | 
			
		||||
	do \
 | 
			
		||||
	    (prohibit="\\<$$i *\\("					\
 | 
			
		||||
	     halt="use $${i}_r, not $$i"				\
 | 
			
		||||
	     $(_sc_search_regexp)					\
 | 
			
		||||
	    ) || fail=1;						\
 | 
			
		||||
	done ; \
 | 
			
		||||
	exit $$fail
 | 
			
		||||
 | 
			
		||||
# Prohibit the inclusion of <ctype.h>.
 | 
			
		||||
sc_prohibit_ctype_h:
 | 
			
		||||
	@prohibit='^# *include  *<ctype\.h>'				\
 | 
			
		||||
	halt="don't use ctype.h; instead, use c-ctype.h"		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Insist on correct types for [pug]id.
 | 
			
		||||
sc_correct_id_types:
 | 
			
		||||
	@prohibit='\<(int|long) *[pug]id\>'				\
 | 
			
		||||
	halt="use pid_t for pid, uid_t for uid, gid_t for gid"		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Forbid sizeof foo or sizeof (foo), require sizeof(foo)
 | 
			
		||||
sc_size_of_brackets:
 | 
			
		||||
	@prohibit='sizeof\s'						\
 | 
			
		||||
	halt='use sizeof(foo), not sizeof (foo) or sizeof foo'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Ensure that no C source file, docs, or rng schema uses TABs for
 | 
			
		||||
# indentation.  Also match *.h.in files, to get libvirt.h.in.  Exclude
 | 
			
		||||
# files in gnulib, since they're imported.
 | 
			
		||||
space_indent_files=(\.(rng|s?[ch](\.in)?|html.in|py|pl|syms)|(daemon|tools)/.*\.in)
 | 
			
		||||
sc_TAB_in_indentation:
 | 
			
		||||
	@prohibit='^ *	'						\
 | 
			
		||||
	in_vc_files='$(space_indent_files)$$'				\
 | 
			
		||||
	halt='indent with space, not TAB, in C, sh, html, py, syms and RNG schemas' \
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
ctype_re = isalnum|isalpha|isascii|isblank|iscntrl|isdigit|isgraph|islower\
 | 
			
		||||
|isprint|ispunct|isspace|isupper|isxdigit|tolower|toupper
 | 
			
		||||
 | 
			
		||||
sc_avoid_ctype_macros:
 | 
			
		||||
	@prohibit='\b($(ctype_re)) *\('					\
 | 
			
		||||
	halt="don't use ctype macros (use c-ctype.h)"			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
sc_avoid_strcase:
 | 
			
		||||
	@prohibit='\bstrn?case(cmp|str) *\('				\
 | 
			
		||||
	halt="don't use raw strcase functions (use c-strcase instead)"	\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
sc_prohibit_virBufferAdd_with_string_literal:
 | 
			
		||||
	@prohibit='\<virBufferAdd *\([^,]+, *"[^"]'			\
 | 
			
		||||
	halt='use virBufferAddLit, not virBufferAdd, with a string literal' \
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Not only do they fail to deal well with ipv6, but the gethostby*
 | 
			
		||||
# functions are also not thread-safe.
 | 
			
		||||
sc_prohibit_gethostby:
 | 
			
		||||
	@prohibit='\<gethostby(addr|name2?) *\('			\
 | 
			
		||||
	halt='use getaddrinfo, not gethostby*'				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# raw xmlGetProp requires some nasty casts
 | 
			
		||||
sc_prohibit_xmlGetProp:
 | 
			
		||||
	@prohibit='\<xmlGetProp *\('					\
 | 
			
		||||
	halt='use virXMLPropString, not xmlGetProp'			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# xml(ParseURI|SaveUri) doesn't handle IPv6 URIs well
 | 
			
		||||
sc_prohibit_xmlURI:
 | 
			
		||||
	@prohibit='\<xml(ParseURI|SaveUri) *\('				\
 | 
			
		||||
	halt='use virURI(Parse|Format), not xml(ParseURI|SaveUri)'	\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# we don't want old old-style return with parentheses around argument
 | 
			
		||||
sc_prohibit_return_as_function:
 | 
			
		||||
	@prohibit='\<return *\(([^()]*(\([^()]*\)[^()]*)*)\) *;'    \
 | 
			
		||||
	halt='avoid extra () with return statements'                \
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# ATTRIBUTE_UNUSED should only be applied in implementations, not
 | 
			
		||||
# header declarations
 | 
			
		||||
sc_avoid_attribute_unused_in_header:
 | 
			
		||||
	@prohibit='^[^#]*ATTRIBUTE_UNUSED([^:]|$$)'			\
 | 
			
		||||
	in_vc_files='\.h$$'						\
 | 
			
		||||
	halt='use ATTRIBUTE_UNUSED in .c rather than .h files'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Many of the function names below came from this filter:
 | 
			
		||||
# git grep -B2 '\<_('|grep -E '\.c- *[[:alpha:]_][[:alnum:]_]* ?\(.*[,;]$' \
 | 
			
		||||
# |sed 's/.*\.c-  *//'|perl -pe 's/ ?\(.*//'|sort -u \
 | 
			
		||||
# |grep -vE '^(qsort|if|close|assert|fputc|free|N_|vir.*GetName|.*Unlock|virNodeListDevices|virHashRemoveEntry|freeaddrinfo|.*[fF]ree|xdrmem_create|xmlXPathFreeObject|virUUIDFormat|openvzSetProgramSentinal|polkit_action_unref)$'
 | 
			
		||||
 | 
			
		||||
msg_gen_function =
 | 
			
		||||
msg_gen_function += VIR_ERROR
 | 
			
		||||
msg_gen_function += lxcError
 | 
			
		||||
msg_gen_function += regerror
 | 
			
		||||
msg_gen_function += vah_error
 | 
			
		||||
msg_gen_function += vah_warning
 | 
			
		||||
msg_gen_function += virGenericReportError
 | 
			
		||||
msg_gen_function += virLibConnError
 | 
			
		||||
msg_gen_function += virLibDomainError
 | 
			
		||||
msg_gen_function += virLibDomainSnapshotError
 | 
			
		||||
msg_gen_function += virLibInterfaceError
 | 
			
		||||
msg_gen_function += virLibNetworkError
 | 
			
		||||
msg_gen_function += virLibNodeDeviceError
 | 
			
		||||
msg_gen_function += virLibNWFilterError
 | 
			
		||||
msg_gen_function += virLibSecretError
 | 
			
		||||
msg_gen_function += virLibStoragePoolError
 | 
			
		||||
msg_gen_function += virLibStorageVolError
 | 
			
		||||
msg_gen_function += virRaiseError
 | 
			
		||||
msg_gen_function += virReportError
 | 
			
		||||
msg_gen_function += virReportErrorHelper
 | 
			
		||||
msg_gen_function += virReportSystemError
 | 
			
		||||
msg_gen_function += xenapiSessionErrorHandler
 | 
			
		||||
 | 
			
		||||
# Uncomment the following and run "make syntax-check" to see diagnostics
 | 
			
		||||
# that are not yet marked for translation, but that need to be rewritten
 | 
			
		||||
# so that they are translatable.
 | 
			
		||||
# msg_gen_function += fprintf
 | 
			
		||||
# msg_gen_function += testError
 | 
			
		||||
# msg_gen_function += vshPrint
 | 
			
		||||
# msg_gen_function += vshError
 | 
			
		||||
 | 
			
		||||
func_or := $(shell echo $(msg_gen_function)|tr -s ' ' '|')
 | 
			
		||||
func_re := ($(func_or))
 | 
			
		||||
 | 
			
		||||
# Look for diagnostics that aren't marked for translation.
 | 
			
		||||
# This won't find any for which error's format string is on a separate line.
 | 
			
		||||
# The sed filters eliminate false-positives like these:
 | 
			
		||||
#    _("...: "
 | 
			
		||||
#    "%s", _("no storage vol w..."
 | 
			
		||||
sc_libvirt_unmarked_diagnostics:
 | 
			
		||||
	@prohibit='\<$(func_re) *\([^"]*"[^"]*[a-z]{3}'			\
 | 
			
		||||
	exclude='_\('							\
 | 
			
		||||
	halt='found unmarked diagnostic(s)'				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
	@{ grep     -nE '\<$(func_re) *\(.*;$$' $$($(VC_LIST_EXCEPT));   \
 | 
			
		||||
	   grep -A1 -nE '\<$(func_re) *\(.*,$$' $$($(VC_LIST_EXCEPT)); } \
 | 
			
		||||
	   | sed 's/_("\([^\"]\|\\.\)\+"//;s/[	 ]"%s"//'		\
 | 
			
		||||
	   | grep '[	 ]"' &&						\
 | 
			
		||||
	  { echo '$(ME): found unmarked diagnostic(s)' 1>&2;		\
 | 
			
		||||
	    exit 1; } || :
 | 
			
		||||
 | 
			
		||||
# Like the above, but prohibit a newline at the end of a diagnostic.
 | 
			
		||||
# This is subject to false positives partly because it naively looks for
 | 
			
		||||
# `\n"', which may not be the end of the string, and also because it takes
 | 
			
		||||
# two lines of context (the -A2) after the line with the function name.
 | 
			
		||||
# FIXME: this rule might benefit from a separate function list, in case
 | 
			
		||||
# there are functions to which this one applies but that do not get marked
 | 
			
		||||
# diagnostics.
 | 
			
		||||
sc_prohibit_newline_at_end_of_diagnostic:
 | 
			
		||||
	@grep -A2 -nE							\
 | 
			
		||||
	    '\<$(func_re) *\(' $$($(VC_LIST_EXCEPT))			\
 | 
			
		||||
	    | grep '\\n"'						\
 | 
			
		||||
	  && { echo '$(ME): newline at end of message(s)' 1>&2;		\
 | 
			
		||||
	    exit 1; } || :
 | 
			
		||||
 | 
			
		||||
# Look for diagnostics that lack a % in the format string, except that we
 | 
			
		||||
# allow VIR_ERROR to do this, and ignore functions that take a single
 | 
			
		||||
# string rather than a format argument.
 | 
			
		||||
sc_prohibit_diagnostic_without_format:
 | 
			
		||||
	@{ grep     -nE '\<$(func_re) *\(.*;$$' $$($(VC_LIST_EXCEPT));   \
 | 
			
		||||
	   grep -A2 -nE '\<$(func_re) *\(.*,$$' $$($(VC_LIST_EXCEPT)); } \
 | 
			
		||||
	   | sed -rn -e ':l; /[,"]$$/ {N;b l;}'				 \
 | 
			
		||||
		-e '/(xenapiSessionErrorHandler|vah_(error|warning))/d'	 \
 | 
			
		||||
		-e '/\<$(func_re) *\([^"]*"([^%"]|"\n[^"]*")*"[,)]/p'	 \
 | 
			
		||||
           | grep -vE 'VIR_ERROR' &&					 \
 | 
			
		||||
	  { echo '$(ME): found diagnostic without %' 1>&2;		 \
 | 
			
		||||
	    exit 1; } || :
 | 
			
		||||
 | 
			
		||||
# The strings "" and "%s" should never be marked for translation.
 | 
			
		||||
# Files under tests/ and examples/ should not be translated.
 | 
			
		||||
sc_prohibit_useless_translation:
 | 
			
		||||
	@prohibit='_\("(%s)?"\)'					\
 | 
			
		||||
	halt='found useless translation'				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
	@prohibit='\<N?_ *\('						\
 | 
			
		||||
	in_vc_files='^(tests|examples)/'				\
 | 
			
		||||
	halt='no translations in tests or examples'			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# When splitting a diagnostic across lines, ensure that there is a space
 | 
			
		||||
# or \n on one side of the split.
 | 
			
		||||
sc_require_whitespace_in_translation:
 | 
			
		||||
	@grep -n -A1 '"$$' $$($(VC_LIST_EXCEPT))   			\
 | 
			
		||||
	   | sed -ne ':l; /"$$/ {N;b l;}; s/"\n[^"]*"/""/g; s/\\n/ /g'	\
 | 
			
		||||
		-e '/_(.*[^\ ]""[^\ ]/p' | grep . &&			\
 | 
			
		||||
	  { echo '$(ME): missing whitespace at line split' 1>&2;	\
 | 
			
		||||
	    exit 1; } || :
 | 
			
		||||
 | 
			
		||||
# Enforce recommended preprocessor indentation style.
 | 
			
		||||
sc_preprocessor_indentation:
 | 
			
		||||
	@if cppi --version >/dev/null 2>&1; then			\
 | 
			
		||||
	  $(VC_LIST_EXCEPT) | grep '\.[ch]$$' | xargs cppi -a -c	\
 | 
			
		||||
	    || { echo '$(ME): incorrect preprocessor indentation' 1>&2;	\
 | 
			
		||||
		exit 1; };						\
 | 
			
		||||
	else								\
 | 
			
		||||
	  echo '$(ME): skipping test $@: cppi not installed' 1>&2;	\
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
sc_copyright_format:
 | 
			
		||||
	@require='Copyright .*Red 'Hat', Inc\.'				\
 | 
			
		||||
	containing='Copyright .*Red 'Hat				\
 | 
			
		||||
	halt='Red Hat copyright is missing Inc.'			\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
	@prohibit='Copyright [^(].*Red 'Hat				\
 | 
			
		||||
	halt='consistently use (C) in Red Hat copyright'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
	@prohibit='\<Red''Hat\>'					\
 | 
			
		||||
	halt='spell Red Hat as two words'				\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Prefer the new URL listing over the old street address listing when
 | 
			
		||||
# calling out where to get a copy of the [L]GPL.
 | 
			
		||||
sc_copyright_address:
 | 
			
		||||
	@prohibit=Boston,' MA'						\
 | 
			
		||||
	halt='Point to <http://www.gnu.org/licenses/>, not an address'	\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Some functions/macros produce messages intended solely for developers
 | 
			
		||||
# and maintainers.  Do not mark them for translation.
 | 
			
		||||
sc_prohibit_gettext_markup:
 | 
			
		||||
	@prohibit='\<VIR_(WARN|INFO|DEBUG) *\(_\('			\
 | 
			
		||||
	halt='do not mark these strings for translation'		\
 | 
			
		||||
	  $(_sc_search_regexp)
 | 
			
		||||
 | 
			
		||||
# Our code is divided into modular subdirectories for a reason, and
 | 
			
		||||
# lower-level code must not include higher-level headers.
 | 
			
		||||
cross_dirs=$(patsubst $(srcdir)/src/%.,%,$(wildcard $(srcdir)/src/*/.))
 | 
			
		||||
cross_dirs_re=($(subst / ,/|,$(cross_dirs)))
 | 
			
		||||
sc_prohibit_cross_inclusion:
 | 
			
		||||
	@for dir in $(cross_dirs); do					\
 | 
			
		||||
	  case $$dir in							\
 | 
			
		||||
	    util/) safe="util";;					\
 | 
			
		||||
	    cpu/ | locking/ | network/ | rpc/ | security/)		\
 | 
			
		||||
	      safe="($$dir|util|conf)";;				\
 | 
			
		||||
	    xenapi/ | xenxs/ ) safe="($$dir|util|conf|xen)";;		\
 | 
			
		||||
	    *) safe="($$dir|util|conf|cpu|network|locking|rpc|security)";; \
 | 
			
		||||
	  esac;								\
 | 
			
		||||
	  in_vc_files="^src/$$dir"					\
 | 
			
		||||
	  prohibit='^# *include .$(cross_dirs_re)'			\
 | 
			
		||||
	  exclude="# *include .$$safe"					\
 | 
			
		||||
	  halt='unsafe cross-directory include'				\
 | 
			
		||||
	    $(_sc_search_regexp)					\
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
# When converting an enum to a string, make sure that we track any new
 | 
			
		||||
# elements added to the enum by using a _LAST marker.
 | 
			
		||||
sc_require_enum_last_marker:
 | 
			
		||||
	@grep -A1 -nE '^[^#]*VIR_ENUM_IMPL *\(' $$($(VC_LIST_EXCEPT))	\
 | 
			
		||||
	   | sed -ne '/VIR_ENUM_IMPL[^,]*,$$/N'				\
 | 
			
		||||
	     -e '/VIR_ENUM_IMPL[^,]*,[^,]*[^_,][^L,][^A,][^S,][^T,],/p'	\
 | 
			
		||||
	     -e '/VIR_ENUM_IMPL[^,]*,[^,]\{0,4\},/p'			\
 | 
			
		||||
	   | grep . &&							\
 | 
			
		||||
	  { echo '$(ME): enum impl needs to use _LAST marker' 1>&2;	\
 | 
			
		||||
	    exit 1; } || :
 | 
			
		||||
 | 
			
		||||
# We don't use this feature of maint.mk.
 | 
			
		||||
prev_version_file = /dev/null
 | 
			
		||||
 | 
			
		||||
ifeq (0,$(MAKELEVEL))
 | 
			
		||||
  _curr_status = .git-module-status
 | 
			
		||||
  # The sed filter accommodates those who check out on a commit from which
 | 
			
		||||
  # no tag is reachable.  In that case, git submodule status prints a "-"
 | 
			
		||||
  # in column 1 and does not print a "git describe"-style string after the
 | 
			
		||||
  # submodule name.  Contrast these:
 | 
			
		||||
  # -b653eda3ac4864de205419d9f41eec267cb89eeb .gnulib
 | 
			
		||||
  #  b653eda3ac4864de205419d9f41eec267cb89eeb .gnulib (v0.0-2286-gb653eda)
 | 
			
		||||
  # $ cat .git-module-status
 | 
			
		||||
  # b653eda3ac4864de205419d9f41eec267cb89eeb
 | 
			
		||||
  #
 | 
			
		||||
  # Keep this logic in sync with autogen.sh.
 | 
			
		||||
  _submodule_hash = sed 's/^[ +-]//;s/ .*//'
 | 
			
		||||
  _update_required := $(shell						\
 | 
			
		||||
      cd '$(srcdir)';							\
 | 
			
		||||
      test -d .git || { echo 0; exit; };				\
 | 
			
		||||
      test -f po/Makevars || { echo 1; exit; };				\
 | 
			
		||||
      test -f AUTHORS || { echo 1; exit; };				\
 | 
			
		||||
      actual=$$(git submodule status | $(_submodule_hash);		\
 | 
			
		||||
		git hash-object bootstrap.conf;				\
 | 
			
		||||
		git ls-tree -d HEAD gnulib/local | awk '{print $$3}';	\
 | 
			
		||||
		git diff .gnulib);					\
 | 
			
		||||
      stamp="$$($(_submodule_hash) $(_curr_status) 2>/dev/null)";	\
 | 
			
		||||
      test "$$stamp" = "$$actual"; echo $$?)
 | 
			
		||||
  _clean_requested = $(filter %clean,$(MAKECMDGOALS))
 | 
			
		||||
  ifeq (1,$(_update_required)$(_clean_requested))
 | 
			
		||||
    $(info INFO: gnulib update required; running ./autogen.sh first)
 | 
			
		||||
    $(shell touch $(srcdir)/AUTHORS $(srcdir)/ChangeLog)
 | 
			
		||||
maint.mk Makefile: _autogen
 | 
			
		||||
  endif
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
# It is necessary to call autogen any time gnulib changes.  Autogen
 | 
			
		||||
# reruns configure, then we regenerate all Makefiles at once.
 | 
			
		||||
.PHONY: _autogen
 | 
			
		||||
_autogen:
 | 
			
		||||
	$(srcdir)/autogen.sh
 | 
			
		||||
	./config.status
 | 
			
		||||
 | 
			
		||||
# regenerate HACKING as part of the syntax-check
 | 
			
		||||
syntax-check: $(top_srcdir)/HACKING
 | 
			
		||||
 | 
			
		||||
# sc_po_check can fail if generated files are not built first
 | 
			
		||||
sc_po_check: \
 | 
			
		||||
		$(srcdir)/daemon/remote_dispatch.h \
 | 
			
		||||
		$(srcdir)/daemon/qemu_dispatch.h \
 | 
			
		||||
		$(srcdir)/src/remote/remote_client_bodies.h
 | 
			
		||||
$(srcdir)/daemon/remote_dispatch.h: $(srcdir)/src/remote/remote_protocol.x
 | 
			
		||||
	$(MAKE) -C daemon remote_dispatch.h
 | 
			
		||||
$(srcdir)/daemon/qemu_dispatch.h: $(srcdir)/src/remote/qemu_protocol.x
 | 
			
		||||
	$(MAKE) -C daemon qemu_dispatch.h
 | 
			
		||||
$(srcdir)/src/remote/remote_client_bodies.h: $(srcdir)/src/remote/remote_protocol.x
 | 
			
		||||
	$(MAKE) -C src remote/remote_client_bodies.h
 | 
			
		||||
 | 
			
		||||
# List all syntax-check exemptions:
 | 
			
		||||
exclude_file_name_regexp--sc_avoid_strcase = ^tools/virsh\.h$$
 | 
			
		||||
 | 
			
		||||
_src1=libvirt|fdstream|qemu/qemu_monitor|util/(command|util)|xen/xend_internal|rpc/virnetsocket|lxc/lxc_controller
 | 
			
		||||
exclude_file_name_regexp--sc_avoid_write = \
 | 
			
		||||
  ^(src/($(_src1))|daemon/libvirtd|tools/console|tests/(shunload|virnettlscontext)test)\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_bindtextdomain = ^(tests|examples)/
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_copyright_address = \
 | 
			
		||||
  ^COPYING\.LIB$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_flags_usage = ^(docs/|src/util/virnetdevtap\.c$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_libvirt_unmarked_diagnostics = \
 | 
			
		||||
  ^(src/rpc/gendispatch\.pl$$|tests/)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_po_check = ^(docs/|src/rpc/gendispatch\.pl$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_VIR_ERR_NO_MEMORY = \
 | 
			
		||||
  ^(include/libvirt/virterror\.h|daemon/dispatch\.c|src/util/virterror\.c)$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_access_xok = ^src/util/util\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_always_true_header_tests = \
 | 
			
		||||
  ^python/(libvirt-(qemu-)?override|typewrappers)\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_asprintf = \
 | 
			
		||||
  ^(bootstrap.conf$$|src/util/util\.c$$|examples/domain-events/events-c/event-test\.c$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_close = \
 | 
			
		||||
  (\.p[yl]$$|^docs/|^(src/util/virfile\.c|src/libvirt\.c)$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_empty_lines_at_EOF = \
 | 
			
		||||
  (^tests/(qemuhelp|nodeinfo)data/|\.(gif|ico|png|diff)$$)
 | 
			
		||||
 | 
			
		||||
_src2=src/(util/command|libvirt|lxc/lxc_controller)
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_fork_wrappers = \
 | 
			
		||||
  (^($(_src2)|tests/testutils|daemon/libvirtd)\.c$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_gethostname = ^src/util/util\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_internal_functions = \
 | 
			
		||||
  ^src/(util/(memory|util|virfile)\.[hc]|esx/esx_vi\.c)$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_newline_at_end_of_diagnostic = \
 | 
			
		||||
  ^src/rpc/gendispatch\.pl$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_nonreentrant = \
 | 
			
		||||
  ^((po|tests)/|docs/.*py|run.in$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_raw_allocation = \
 | 
			
		||||
  ^(src/util/memory\.[ch]|examples/.*)$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_readlink = \
 | 
			
		||||
  ^src/(util/util|lxc/lxc_container)\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_setuid = ^src/util/util\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_sprintf = \
 | 
			
		||||
  ^(docs/hacking\.html\.in)|(examples/systemtap/.*stp)|(src/dtrace2systemtap\.pl)|(src/rpc/gensystemtap\.pl)$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_strncpy = ^src/util/util\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_strtol = \
 | 
			
		||||
  ^src/(util/sexpr|(vbox|xen|xenxs)/.*)\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_xmlGetProp = ^src/util/xml\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_xmlURI = ^src/util/viruri\.c$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_prohibit_return_as_function = \.py$$
 | 
			
		||||
 | 
			
		||||
_virsh_includes=(edit|domain-monitor|domain|volume|pool|network|interface|nwfilter|secret|snapshot|host|nodedev)
 | 
			
		||||
exclude_file_name_regexp--sc_require_config_h = ^(examples/|tools/virsh-$(_virsh_includes)\.c$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_require_config_h_first = ^(examples/|tools/virsh-$(_virsh_includes)\.c$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_trailing_blank = \
 | 
			
		||||
  (/qemuhelpdata/|\.(fig|gif|ico|png)$$)
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_unmarked_diagnostics = \
 | 
			
		||||
  ^(docs/apibuild.py|tests/virt-aa-helper-test)$$
 | 
			
		||||
 | 
			
		||||
exclude_file_name_regexp--sc_size_of_brackets = cfg.mk
 | 
			
		||||
@@ -1,94 +0,0 @@
 | 
			
		||||
==============
 | 
			
		||||
CI for libvirt
 | 
			
		||||
==============
 | 
			
		||||
 | 
			
		||||
This document provides some information related to the CI capabilities for the
 | 
			
		||||
libvirt project.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
GitLab CI tuning
 | 
			
		||||
================
 | 
			
		||||
 | 
			
		||||
The behaviour of GitLab CI can be tuned through a number of variables
 | 
			
		||||
which can be set at push time, or through the UI. See ``ci/gitlab.yml``
 | 
			
		||||
for further details.
 | 
			
		||||
 | 
			
		||||
Cirrus CI integration
 | 
			
		||||
=====================
 | 
			
		||||
 | 
			
		||||
libvirt currently supports three non-Linux operating systems: Windows, FreeBSD
 | 
			
		||||
and macOS. Windows cross-builds can be prepared on Linux by using `MinGW-w64`_,
 | 
			
		||||
but for both FreeBSD and macOS we need to use the actual operating system, and
 | 
			
		||||
unfortunately GitLab shared runners are currently not available for either.
 | 
			
		||||
 | 
			
		||||
To work around this limitation, we take advantage of `Cirrus CI`_'s free
 | 
			
		||||
offering: more specifically, we use the `cirrus-run`_ script to trigger Cirrus
 | 
			
		||||
CI jobs from GitLab CI jobs so that the workaround is almost entirely
 | 
			
		||||
transparent to users and there's no need to constantly check two separate CI
 | 
			
		||||
dashboards.
 | 
			
		||||
 | 
			
		||||
There is, however, some one-time setup required. If you want FreeBSD and macOS
 | 
			
		||||
builds to happen when you push to your GitLab repository, you need to
 | 
			
		||||
 | 
			
		||||
* set up a GitHub repository for the project, eg. ``yourusername/libvirt``.
 | 
			
		||||
  This repository needs to exist for cirrus-run to work, but it doesn't need to
 | 
			
		||||
  be kept up to date, so you can create it and then forget about it;
 | 
			
		||||
 | 
			
		||||
* enable the `Cirrus CI GitHub app`_  for your GitHub account;
 | 
			
		||||
 | 
			
		||||
* sign up for Cirrus CI. It's enough to log into the website using your GitHub
 | 
			
		||||
  account;
 | 
			
		||||
 | 
			
		||||
* grab an API token from the `Cirrus CI settings`_ page;
 | 
			
		||||
 | 
			
		||||
* it may be necessary to push an empty ``.cirrus.yml`` file to your github fork
 | 
			
		||||
  for Cirrus CI to properly recognize the project. You can check whether
 | 
			
		||||
  Cirrus CI knows about your project by navigating to:
 | 
			
		||||
 | 
			
		||||
  ``https://cirrus-ci.com/yourusername/libvirt``
 | 
			
		||||
 | 
			
		||||
* in the *CI/CD / Variables* section of the settings page for your GitLab
 | 
			
		||||
  repository, create two new variables:
 | 
			
		||||
 | 
			
		||||
  * ``CIRRUS_GITHUB_REPO``, containing the name of the GitHub repository
 | 
			
		||||
    created earlier, eg. ``yourusername/libvirt``;
 | 
			
		||||
 | 
			
		||||
  * ``CIRRUS_API_TOKEN``, containing the Cirrus CI API token generated earlier.
 | 
			
		||||
    This variable **must** be marked as *Masked*, because anyone with knowledge
 | 
			
		||||
    of it can impersonate you as far as Cirrus CI is concerned.
 | 
			
		||||
 | 
			
		||||
  Neither of these variables should be marked as *Protected*, because in
 | 
			
		||||
  general you'll want to be able to trigger Cirrus CI builds from non-protected
 | 
			
		||||
  branches.
 | 
			
		||||
 | 
			
		||||
Once this one-time setup is complete, you can just keep pushing to your GitLab
 | 
			
		||||
repository as usual and you'll automatically get the additional CI coverage.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.. _Cirrus CI GitHub app: https://github.com/marketplace/cirrus-ci
 | 
			
		||||
.. _Cirrus CI settings: https://cirrus-ci.com/settings/profile/
 | 
			
		||||
.. _Cirrus CI: https://cirrus-ci.com/
 | 
			
		||||
.. _MinGW-w64: https://www.mingw-w64.org/
 | 
			
		||||
.. _cirrus-run: https://github.com/sio/cirrus-run/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Coverity scan integration
 | 
			
		||||
=========================
 | 
			
		||||
 | 
			
		||||
This will be used only by the main repository for master branch by running
 | 
			
		||||
scheduled pipeline in GitLab.
 | 
			
		||||
 | 
			
		||||
The service is proved by `Coverity Scan`_ and requires that the project is
 | 
			
		||||
registered there to get free coverity analysis which we already have for
 | 
			
		||||
`libvirt project`_.
 | 
			
		||||
 | 
			
		||||
To run the coverity job it requires two new variables:
 | 
			
		||||
 | 
			
		||||
  * ``COVERITY_SCAN_PROJECT_NAME``, containing the `libvirt project`_
 | 
			
		||||
    name.
 | 
			
		||||
 | 
			
		||||
  * ``COVERITY_SCAN_TOKEN``, token visible to admins of `libvirt project`_
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.. _Coverity Scan: https://scan.coverity.com/
 | 
			
		||||
.. _libvirt project: https://scan.coverity.com/projects/libvirt
 | 
			
		||||
@@ -1,101 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf update -y
 | 
			
		||||
    dnf install 'dnf-command(config-manager)' -y
 | 
			
		||||
    dnf config-manager --set-enabled -y crb
 | 
			
		||||
    dnf install -y epel-release
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        audit-libs-devel \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        clang \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cyrus-sasl-devel \
 | 
			
		||||
        device-mapper-devel \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        fuse-devel \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib2-devel \
 | 
			
		||||
        glibc-devel \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        gnutls-devel \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libacl-devel \
 | 
			
		||||
        libattr-devel \
 | 
			
		||||
        libblkid-devel \
 | 
			
		||||
        libcap-ng-devel \
 | 
			
		||||
        libcurl-devel \
 | 
			
		||||
        libiscsi-devel \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libnl3-devel \
 | 
			
		||||
        libpcap-devel \
 | 
			
		||||
        libpciaccess-devel \
 | 
			
		||||
        librbd-devel \
 | 
			
		||||
        libselinux-devel \
 | 
			
		||||
        libssh-devel \
 | 
			
		||||
        libssh2-devel \
 | 
			
		||||
        libtirpc-devel \
 | 
			
		||||
        libwsman-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxml2-devel \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numactl-devel \
 | 
			
		||||
        numad \
 | 
			
		||||
        parted-devel \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        pkgconfig \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pip \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        python3-setuptools \
 | 
			
		||||
        python3-wheel \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-devel \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sanlock-devel \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-devel \
 | 
			
		||||
        systemd-rpm-macros \
 | 
			
		||||
        systemtap-sdt-devel \
 | 
			
		||||
        wireshark-devel \
 | 
			
		||||
        yajl-devel
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
    /usr/bin/pip3 install black
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,83 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    apk update
 | 
			
		||||
    apk upgrade
 | 
			
		||||
    apk add \
 | 
			
		||||
        acl-dev \
 | 
			
		||||
        attr-dev \
 | 
			
		||||
        audit-dev \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        black \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        ceph-dev \
 | 
			
		||||
        clang \
 | 
			
		||||
        curl-dev \
 | 
			
		||||
        cyrus-sasl-dev \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        eudev-dev \
 | 
			
		||||
        fuse-dev \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib-dev \
 | 
			
		||||
        gnutls-dev \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute2 \
 | 
			
		||||
        iptables \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libcap-ng-dev \
 | 
			
		||||
        libnl3-dev \
 | 
			
		||||
        libpcap-dev \
 | 
			
		||||
        libpciaccess-dev \
 | 
			
		||||
        libselinux-dev \
 | 
			
		||||
        libssh-dev \
 | 
			
		||||
        libssh2-dev \
 | 
			
		||||
        libtirpc-dev \
 | 
			
		||||
        libxml2-dev \
 | 
			
		||||
        libxml2-utils \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        lvm2-dev \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        musl-dev \
 | 
			
		||||
        netcf-dev \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        numactl-dev \
 | 
			
		||||
        open-iscsi \
 | 
			
		||||
        parted-dev \
 | 
			
		||||
        perl \
 | 
			
		||||
        pkgconf \
 | 
			
		||||
        polkit \
 | 
			
		||||
        py3-docutils \
 | 
			
		||||
        py3-flake8 \
 | 
			
		||||
        py3-pytest \
 | 
			
		||||
        python3 \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-dev \
 | 
			
		||||
        samurai \
 | 
			
		||||
        sed \
 | 
			
		||||
        util-linux-dev \
 | 
			
		||||
        wireshark-dev \
 | 
			
		||||
        xen-dev \
 | 
			
		||||
        yajl-dev
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    apk list --installed | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,83 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    apk update
 | 
			
		||||
    apk upgrade
 | 
			
		||||
    apk add \
 | 
			
		||||
        acl-dev \
 | 
			
		||||
        attr-dev \
 | 
			
		||||
        audit-dev \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        black \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        ceph-dev \
 | 
			
		||||
        clang \
 | 
			
		||||
        curl-dev \
 | 
			
		||||
        cyrus-sasl-dev \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        eudev-dev \
 | 
			
		||||
        fuse-dev \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib-dev \
 | 
			
		||||
        gnutls-dev \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute2 \
 | 
			
		||||
        iptables \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libcap-ng-dev \
 | 
			
		||||
        libnl3-dev \
 | 
			
		||||
        libpcap-dev \
 | 
			
		||||
        libpciaccess-dev \
 | 
			
		||||
        libselinux-dev \
 | 
			
		||||
        libssh-dev \
 | 
			
		||||
        libssh2-dev \
 | 
			
		||||
        libtirpc-dev \
 | 
			
		||||
        libxml2-dev \
 | 
			
		||||
        libxml2-utils \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        lvm2-dev \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        musl-dev \
 | 
			
		||||
        netcf-dev \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        numactl-dev \
 | 
			
		||||
        open-iscsi \
 | 
			
		||||
        parted-dev \
 | 
			
		||||
        perl \
 | 
			
		||||
        pkgconf \
 | 
			
		||||
        polkit \
 | 
			
		||||
        py3-docutils \
 | 
			
		||||
        py3-flake8 \
 | 
			
		||||
        py3-pytest \
 | 
			
		||||
        python3 \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-dev \
 | 
			
		||||
        samurai \
 | 
			
		||||
        sed \
 | 
			
		||||
        util-linux-dev \
 | 
			
		||||
        wireshark-dev \
 | 
			
		||||
        xen-dev \
 | 
			
		||||
        yajl-dev
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    apk list --installed | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,102 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf distro-sync -y
 | 
			
		||||
    dnf install 'dnf-command(config-manager)' -y
 | 
			
		||||
    dnf config-manager --set-enabled -y crb
 | 
			
		||||
    dnf install -y epel-release
 | 
			
		||||
    dnf install -y epel-next-release
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        audit-libs-devel \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        clang \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cyrus-sasl-devel \
 | 
			
		||||
        device-mapper-devel \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        fuse-devel \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib2-devel \
 | 
			
		||||
        glibc-devel \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        gnutls-devel \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libacl-devel \
 | 
			
		||||
        libattr-devel \
 | 
			
		||||
        libblkid-devel \
 | 
			
		||||
        libcap-ng-devel \
 | 
			
		||||
        libcurl-devel \
 | 
			
		||||
        libiscsi-devel \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libnl3-devel \
 | 
			
		||||
        libpcap-devel \
 | 
			
		||||
        libpciaccess-devel \
 | 
			
		||||
        librbd-devel \
 | 
			
		||||
        libselinux-devel \
 | 
			
		||||
        libssh-devel \
 | 
			
		||||
        libssh2-devel \
 | 
			
		||||
        libtirpc-devel \
 | 
			
		||||
        libwsman-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxml2-devel \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numactl-devel \
 | 
			
		||||
        numad \
 | 
			
		||||
        parted-devel \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        pkgconfig \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pip \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        python3-setuptools \
 | 
			
		||||
        python3-wheel \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-devel \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sanlock-devel \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-devel \
 | 
			
		||||
        systemd-rpm-macros \
 | 
			
		||||
        systemtap-sdt-devel \
 | 
			
		||||
        wireshark-devel \
 | 
			
		||||
        yajl-devel
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
    /usr/bin/pip3 install black
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture arm64
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-aarch64-linux-gnu \
 | 
			
		||||
            libacl1-dev:arm64 \
 | 
			
		||||
            libapparmor-dev:arm64 \
 | 
			
		||||
            libattr1-dev:arm64 \
 | 
			
		||||
            libaudit-dev:arm64 \
 | 
			
		||||
            libblkid-dev:arm64 \
 | 
			
		||||
            libc6-dev:arm64 \
 | 
			
		||||
            libcap-ng-dev:arm64 \
 | 
			
		||||
            libcurl4-gnutls-dev:arm64 \
 | 
			
		||||
            libdevmapper-dev:arm64 \
 | 
			
		||||
            libfuse-dev:arm64 \
 | 
			
		||||
            libglib2.0-dev:arm64 \
 | 
			
		||||
            libglusterfs-dev:arm64 \
 | 
			
		||||
            libgnutls28-dev:arm64 \
 | 
			
		||||
            libiscsi-dev:arm64 \
 | 
			
		||||
            libnl-3-dev:arm64 \
 | 
			
		||||
            libnl-route-3-dev:arm64 \
 | 
			
		||||
            libnuma-dev:arm64 \
 | 
			
		||||
            libparted-dev:arm64 \
 | 
			
		||||
            libpcap0.8-dev:arm64 \
 | 
			
		||||
            libpciaccess-dev:arm64 \
 | 
			
		||||
            librbd-dev:arm64 \
 | 
			
		||||
            libreadline-dev:arm64 \
 | 
			
		||||
            libsanlock-dev:arm64 \
 | 
			
		||||
            libsasl2-dev:arm64 \
 | 
			
		||||
            libselinux1-dev:arm64 \
 | 
			
		||||
            libssh-gcrypt-dev:arm64 \
 | 
			
		||||
            libssh2-1-dev:arm64 \
 | 
			
		||||
            libtirpc-dev:arm64 \
 | 
			
		||||
            libudev-dev:arm64 \
 | 
			
		||||
            libxen-dev:arm64 \
 | 
			
		||||
            libxml2-dev:arm64 \
 | 
			
		||||
            libyajl-dev:arm64 \
 | 
			
		||||
            systemtap-sdt-dev:arm64
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'aarch64'\n\
 | 
			
		||||
cpu = 'aarch64'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="aarch64-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=aarch64-linux-gnu"
 | 
			
		||||
@@ -1,116 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture armel
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-arm-linux-gnueabi \
 | 
			
		||||
            libacl1-dev:armel \
 | 
			
		||||
            libapparmor-dev:armel \
 | 
			
		||||
            libattr1-dev:armel \
 | 
			
		||||
            libaudit-dev:armel \
 | 
			
		||||
            libblkid-dev:armel \
 | 
			
		||||
            libc6-dev:armel \
 | 
			
		||||
            libcap-ng-dev:armel \
 | 
			
		||||
            libcurl4-gnutls-dev:armel \
 | 
			
		||||
            libdevmapper-dev:armel \
 | 
			
		||||
            libfuse-dev:armel \
 | 
			
		||||
            libglib2.0-dev:armel \
 | 
			
		||||
            libglusterfs-dev:armel \
 | 
			
		||||
            libgnutls28-dev:armel \
 | 
			
		||||
            libiscsi-dev:armel \
 | 
			
		||||
            libnl-3-dev:armel \
 | 
			
		||||
            libnl-route-3-dev:armel \
 | 
			
		||||
            libnuma-dev:armel \
 | 
			
		||||
            libparted-dev:armel \
 | 
			
		||||
            libpcap0.8-dev:armel \
 | 
			
		||||
            libpciaccess-dev:armel \
 | 
			
		||||
            librbd-dev:armel \
 | 
			
		||||
            libreadline-dev:armel \
 | 
			
		||||
            libsanlock-dev:armel \
 | 
			
		||||
            libsasl2-dev:armel \
 | 
			
		||||
            libselinux1-dev:armel \
 | 
			
		||||
            libssh-gcrypt-dev:armel \
 | 
			
		||||
            libssh2-1-dev:armel \
 | 
			
		||||
            libtirpc-dev:armel \
 | 
			
		||||
            libudev-dev:armel \
 | 
			
		||||
            libxml2-dev:armel \
 | 
			
		||||
            libyajl-dev:armel \
 | 
			
		||||
            systemtap-sdt-dev:armel
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'arm'\n\
 | 
			
		||||
cpu = 'arm'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="arm-linux-gnueabi"
 | 
			
		||||
export MESON_OPTS="--cross-file=arm-linux-gnueabi"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture armhf
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-arm-linux-gnueabihf \
 | 
			
		||||
            libacl1-dev:armhf \
 | 
			
		||||
            libapparmor-dev:armhf \
 | 
			
		||||
            libattr1-dev:armhf \
 | 
			
		||||
            libaudit-dev:armhf \
 | 
			
		||||
            libblkid-dev:armhf \
 | 
			
		||||
            libc6-dev:armhf \
 | 
			
		||||
            libcap-ng-dev:armhf \
 | 
			
		||||
            libcurl4-gnutls-dev:armhf \
 | 
			
		||||
            libdevmapper-dev:armhf \
 | 
			
		||||
            libfuse-dev:armhf \
 | 
			
		||||
            libglib2.0-dev:armhf \
 | 
			
		||||
            libglusterfs-dev:armhf \
 | 
			
		||||
            libgnutls28-dev:armhf \
 | 
			
		||||
            libiscsi-dev:armhf \
 | 
			
		||||
            libnl-3-dev:armhf \
 | 
			
		||||
            libnl-route-3-dev:armhf \
 | 
			
		||||
            libnuma-dev:armhf \
 | 
			
		||||
            libparted-dev:armhf \
 | 
			
		||||
            libpcap0.8-dev:armhf \
 | 
			
		||||
            libpciaccess-dev:armhf \
 | 
			
		||||
            librbd-dev:armhf \
 | 
			
		||||
            libreadline-dev:armhf \
 | 
			
		||||
            libsanlock-dev:armhf \
 | 
			
		||||
            libsasl2-dev:armhf \
 | 
			
		||||
            libselinux1-dev:armhf \
 | 
			
		||||
            libssh-gcrypt-dev:armhf \
 | 
			
		||||
            libssh2-1-dev:armhf \
 | 
			
		||||
            libtirpc-dev:armhf \
 | 
			
		||||
            libudev-dev:armhf \
 | 
			
		||||
            libxen-dev:armhf \
 | 
			
		||||
            libxml2-dev:armhf \
 | 
			
		||||
            libyajl-dev:armhf \
 | 
			
		||||
            systemtap-sdt-dev:armhf
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'arm'\n\
 | 
			
		||||
cpu = 'armhf'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="arm-linux-gnueabihf"
 | 
			
		||||
export MESON_OPTS="--cross-file=arm-linux-gnueabihf"
 | 
			
		||||
@@ -1,116 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture i386
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-i686-linux-gnu \
 | 
			
		||||
            libacl1-dev:i386 \
 | 
			
		||||
            libapparmor-dev:i386 \
 | 
			
		||||
            libattr1-dev:i386 \
 | 
			
		||||
            libaudit-dev:i386 \
 | 
			
		||||
            libblkid-dev:i386 \
 | 
			
		||||
            libc6-dev:i386 \
 | 
			
		||||
            libcap-ng-dev:i386 \
 | 
			
		||||
            libcurl4-gnutls-dev:i386 \
 | 
			
		||||
            libdevmapper-dev:i386 \
 | 
			
		||||
            libfuse-dev:i386 \
 | 
			
		||||
            libglib2.0-dev:i386 \
 | 
			
		||||
            libglusterfs-dev:i386 \
 | 
			
		||||
            libgnutls28-dev:i386 \
 | 
			
		||||
            libiscsi-dev:i386 \
 | 
			
		||||
            libnl-3-dev:i386 \
 | 
			
		||||
            libnl-route-3-dev:i386 \
 | 
			
		||||
            libnuma-dev:i386 \
 | 
			
		||||
            libparted-dev:i386 \
 | 
			
		||||
            libpcap0.8-dev:i386 \
 | 
			
		||||
            libpciaccess-dev:i386 \
 | 
			
		||||
            librbd-dev:i386 \
 | 
			
		||||
            libreadline-dev:i386 \
 | 
			
		||||
            libsanlock-dev:i386 \
 | 
			
		||||
            libsasl2-dev:i386 \
 | 
			
		||||
            libselinux1-dev:i386 \
 | 
			
		||||
            libssh-gcrypt-dev:i386 \
 | 
			
		||||
            libssh2-1-dev:i386 \
 | 
			
		||||
            libtirpc-dev:i386 \
 | 
			
		||||
            libudev-dev:i386 \
 | 
			
		||||
            libxml2-dev:i386 \
 | 
			
		||||
            libyajl-dev:i386 \
 | 
			
		||||
            systemtap-sdt-dev:i386
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/i686-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/i686-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'x86'\n\
 | 
			
		||||
cpu = 'i686'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="i686-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=i686-linux-gnu"
 | 
			
		||||
@@ -1,116 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture mips64el
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-mips64el-linux-gnuabi64 \
 | 
			
		||||
            libacl1-dev:mips64el \
 | 
			
		||||
            libapparmor-dev:mips64el \
 | 
			
		||||
            libattr1-dev:mips64el \
 | 
			
		||||
            libaudit-dev:mips64el \
 | 
			
		||||
            libblkid-dev:mips64el \
 | 
			
		||||
            libc6-dev:mips64el \
 | 
			
		||||
            libcap-ng-dev:mips64el \
 | 
			
		||||
            libcurl4-gnutls-dev:mips64el \
 | 
			
		||||
            libdevmapper-dev:mips64el \
 | 
			
		||||
            libfuse-dev:mips64el \
 | 
			
		||||
            libglib2.0-dev:mips64el \
 | 
			
		||||
            libglusterfs-dev:mips64el \
 | 
			
		||||
            libgnutls28-dev:mips64el \
 | 
			
		||||
            libiscsi-dev:mips64el \
 | 
			
		||||
            libnl-3-dev:mips64el \
 | 
			
		||||
            libnl-route-3-dev:mips64el \
 | 
			
		||||
            libnuma-dev:mips64el \
 | 
			
		||||
            libparted-dev:mips64el \
 | 
			
		||||
            libpcap0.8-dev:mips64el \
 | 
			
		||||
            libpciaccess-dev:mips64el \
 | 
			
		||||
            librbd-dev:mips64el \
 | 
			
		||||
            libreadline-dev:mips64el \
 | 
			
		||||
            libsanlock-dev:mips64el \
 | 
			
		||||
            libsasl2-dev:mips64el \
 | 
			
		||||
            libselinux1-dev:mips64el \
 | 
			
		||||
            libssh-gcrypt-dev:mips64el \
 | 
			
		||||
            libssh2-1-dev:mips64el \
 | 
			
		||||
            libtirpc-dev:mips64el \
 | 
			
		||||
            libudev-dev:mips64el \
 | 
			
		||||
            libxml2-dev:mips64el \
 | 
			
		||||
            libyajl-dev:mips64el \
 | 
			
		||||
            systemtap-sdt-dev:mips64el
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'mips64'\n\
 | 
			
		||||
cpu = 'mips64el'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="mips64el-linux-gnuabi64"
 | 
			
		||||
export MESON_OPTS="--cross-file=mips64el-linux-gnuabi64"
 | 
			
		||||
@@ -1,116 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture mipsel
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-mipsel-linux-gnu \
 | 
			
		||||
            libacl1-dev:mipsel \
 | 
			
		||||
            libapparmor-dev:mipsel \
 | 
			
		||||
            libattr1-dev:mipsel \
 | 
			
		||||
            libaudit-dev:mipsel \
 | 
			
		||||
            libblkid-dev:mipsel \
 | 
			
		||||
            libc6-dev:mipsel \
 | 
			
		||||
            libcap-ng-dev:mipsel \
 | 
			
		||||
            libcurl4-gnutls-dev:mipsel \
 | 
			
		||||
            libdevmapper-dev:mipsel \
 | 
			
		||||
            libfuse-dev:mipsel \
 | 
			
		||||
            libglib2.0-dev:mipsel \
 | 
			
		||||
            libglusterfs-dev:mipsel \
 | 
			
		||||
            libgnutls28-dev:mipsel \
 | 
			
		||||
            libiscsi-dev:mipsel \
 | 
			
		||||
            libnl-3-dev:mipsel \
 | 
			
		||||
            libnl-route-3-dev:mipsel \
 | 
			
		||||
            libnuma-dev:mipsel \
 | 
			
		||||
            libparted-dev:mipsel \
 | 
			
		||||
            libpcap0.8-dev:mipsel \
 | 
			
		||||
            libpciaccess-dev:mipsel \
 | 
			
		||||
            librbd-dev:mipsel \
 | 
			
		||||
            libreadline-dev:mipsel \
 | 
			
		||||
            libsanlock-dev:mipsel \
 | 
			
		||||
            libsasl2-dev:mipsel \
 | 
			
		||||
            libselinux1-dev:mipsel \
 | 
			
		||||
            libssh-gcrypt-dev:mipsel \
 | 
			
		||||
            libssh2-1-dev:mipsel \
 | 
			
		||||
            libtirpc-dev:mipsel \
 | 
			
		||||
            libudev-dev:mipsel \
 | 
			
		||||
            libxml2-dev:mipsel \
 | 
			
		||||
            libyajl-dev:mipsel \
 | 
			
		||||
            systemtap-sdt-dev:mipsel
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'mips'\n\
 | 
			
		||||
cpu = 'mipsel'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="mipsel-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=mipsel-linux-gnu"
 | 
			
		||||
@@ -1,116 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture ppc64el
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-powerpc64le-linux-gnu \
 | 
			
		||||
            libacl1-dev:ppc64el \
 | 
			
		||||
            libapparmor-dev:ppc64el \
 | 
			
		||||
            libattr1-dev:ppc64el \
 | 
			
		||||
            libaudit-dev:ppc64el \
 | 
			
		||||
            libblkid-dev:ppc64el \
 | 
			
		||||
            libc6-dev:ppc64el \
 | 
			
		||||
            libcap-ng-dev:ppc64el \
 | 
			
		||||
            libcurl4-gnutls-dev:ppc64el \
 | 
			
		||||
            libdevmapper-dev:ppc64el \
 | 
			
		||||
            libfuse-dev:ppc64el \
 | 
			
		||||
            libglib2.0-dev:ppc64el \
 | 
			
		||||
            libglusterfs-dev:ppc64el \
 | 
			
		||||
            libgnutls28-dev:ppc64el \
 | 
			
		||||
            libiscsi-dev:ppc64el \
 | 
			
		||||
            libnl-3-dev:ppc64el \
 | 
			
		||||
            libnl-route-3-dev:ppc64el \
 | 
			
		||||
            libnuma-dev:ppc64el \
 | 
			
		||||
            libparted-dev:ppc64el \
 | 
			
		||||
            libpcap0.8-dev:ppc64el \
 | 
			
		||||
            libpciaccess-dev:ppc64el \
 | 
			
		||||
            librbd-dev:ppc64el \
 | 
			
		||||
            libreadline-dev:ppc64el \
 | 
			
		||||
            libsanlock-dev:ppc64el \
 | 
			
		||||
            libsasl2-dev:ppc64el \
 | 
			
		||||
            libselinux1-dev:ppc64el \
 | 
			
		||||
            libssh-gcrypt-dev:ppc64el \
 | 
			
		||||
            libssh2-1-dev:ppc64el \
 | 
			
		||||
            libtirpc-dev:ppc64el \
 | 
			
		||||
            libudev-dev:ppc64el \
 | 
			
		||||
            libxml2-dev:ppc64el \
 | 
			
		||||
            libyajl-dev:ppc64el \
 | 
			
		||||
            systemtap-sdt-dev:ppc64el
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'ppc64'\n\
 | 
			
		||||
cpu = 'powerpc64le'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="powerpc64le-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=powerpc64le-linux-gnu"
 | 
			
		||||
@@ -1,116 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture s390x
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-s390x-linux-gnu \
 | 
			
		||||
            libacl1-dev:s390x \
 | 
			
		||||
            libapparmor-dev:s390x \
 | 
			
		||||
            libattr1-dev:s390x \
 | 
			
		||||
            libaudit-dev:s390x \
 | 
			
		||||
            libblkid-dev:s390x \
 | 
			
		||||
            libc6-dev:s390x \
 | 
			
		||||
            libcap-ng-dev:s390x \
 | 
			
		||||
            libcurl4-gnutls-dev:s390x \
 | 
			
		||||
            libdevmapper-dev:s390x \
 | 
			
		||||
            libfuse-dev:s390x \
 | 
			
		||||
            libglib2.0-dev:s390x \
 | 
			
		||||
            libglusterfs-dev:s390x \
 | 
			
		||||
            libgnutls28-dev:s390x \
 | 
			
		||||
            libiscsi-dev:s390x \
 | 
			
		||||
            libnl-3-dev:s390x \
 | 
			
		||||
            libnl-route-3-dev:s390x \
 | 
			
		||||
            libnuma-dev:s390x \
 | 
			
		||||
            libparted-dev:s390x \
 | 
			
		||||
            libpcap0.8-dev:s390x \
 | 
			
		||||
            libpciaccess-dev:s390x \
 | 
			
		||||
            librbd-dev:s390x \
 | 
			
		||||
            libreadline-dev:s390x \
 | 
			
		||||
            libsanlock-dev:s390x \
 | 
			
		||||
            libsasl2-dev:s390x \
 | 
			
		||||
            libselinux1-dev:s390x \
 | 
			
		||||
            libssh-gcrypt-dev:s390x \
 | 
			
		||||
            libssh2-1-dev:s390x \
 | 
			
		||||
            libtirpc-dev:s390x \
 | 
			
		||||
            libudev-dev:s390x \
 | 
			
		||||
            libxml2-dev:s390x \
 | 
			
		||||
            libyajl-dev:s390x \
 | 
			
		||||
            systemtap-sdt-dev:s390x
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/s390x-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/s390x-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 's390x'\n\
 | 
			
		||||
cpu = 's390x'\n\
 | 
			
		||||
endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="s390x-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=s390x-linux-gnu"
 | 
			
		||||
@@ -1,100 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            clang \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gcc \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libacl1-dev \
 | 
			
		||||
            libapparmor-dev \
 | 
			
		||||
            libattr1-dev \
 | 
			
		||||
            libaudit-dev \
 | 
			
		||||
            libblkid-dev \
 | 
			
		||||
            libc6-dev \
 | 
			
		||||
            libcap-ng-dev \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libcurl4-gnutls-dev \
 | 
			
		||||
            libdevmapper-dev \
 | 
			
		||||
            libfuse-dev \
 | 
			
		||||
            libglib2.0-dev \
 | 
			
		||||
            libglusterfs-dev \
 | 
			
		||||
            libgnutls28-dev \
 | 
			
		||||
            libiscsi-dev \
 | 
			
		||||
            libnetcf-dev \
 | 
			
		||||
            libnl-3-dev \
 | 
			
		||||
            libnl-route-3-dev \
 | 
			
		||||
            libnuma-dev \
 | 
			
		||||
            libparted-dev \
 | 
			
		||||
            libpcap0.8-dev \
 | 
			
		||||
            libpciaccess-dev \
 | 
			
		||||
            librbd-dev \
 | 
			
		||||
            libreadline-dev \
 | 
			
		||||
            libsanlock-dev \
 | 
			
		||||
            libsasl2-dev \
 | 
			
		||||
            libselinux1-dev \
 | 
			
		||||
            libssh-gcrypt-dev \
 | 
			
		||||
            libssh2-1-dev \
 | 
			
		||||
            libtirpc-dev \
 | 
			
		||||
            libudev-dev \
 | 
			
		||||
            libxen-dev \
 | 
			
		||||
            libxml2-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            libyajl-dev \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            systemtap-sdt-dev \
 | 
			
		||||
            wireshark-dev \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,118 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture arm64
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-aarch64-linux-gnu \
 | 
			
		||||
            libacl1-dev:arm64 \
 | 
			
		||||
            libapparmor-dev:arm64 \
 | 
			
		||||
            libattr1-dev:arm64 \
 | 
			
		||||
            libaudit-dev:arm64 \
 | 
			
		||||
            libblkid-dev:arm64 \
 | 
			
		||||
            libc6-dev:arm64 \
 | 
			
		||||
            libcap-ng-dev:arm64 \
 | 
			
		||||
            libcurl4-gnutls-dev:arm64 \
 | 
			
		||||
            libdevmapper-dev:arm64 \
 | 
			
		||||
            libfuse-dev:arm64 \
 | 
			
		||||
            libglib2.0-dev:arm64 \
 | 
			
		||||
            libglusterfs-dev:arm64 \
 | 
			
		||||
            libgnutls28-dev:arm64 \
 | 
			
		||||
            libiscsi-dev:arm64 \
 | 
			
		||||
            libnl-3-dev:arm64 \
 | 
			
		||||
            libnl-route-3-dev:arm64 \
 | 
			
		||||
            libnuma-dev:arm64 \
 | 
			
		||||
            libparted-dev:arm64 \
 | 
			
		||||
            libpcap0.8-dev:arm64 \
 | 
			
		||||
            libpciaccess-dev:arm64 \
 | 
			
		||||
            librbd-dev:arm64 \
 | 
			
		||||
            libreadline-dev:arm64 \
 | 
			
		||||
            libsanlock-dev:arm64 \
 | 
			
		||||
            libsasl2-dev:arm64 \
 | 
			
		||||
            libselinux1-dev:arm64 \
 | 
			
		||||
            libssh-gcrypt-dev:arm64 \
 | 
			
		||||
            libssh2-1-dev:arm64 \
 | 
			
		||||
            libtirpc-dev:arm64 \
 | 
			
		||||
            libudev-dev:arm64 \
 | 
			
		||||
            libxen-dev:arm64 \
 | 
			
		||||
            libxml2-dev:arm64 \
 | 
			
		||||
            libyajl-dev:arm64 \
 | 
			
		||||
            systemtap-sdt-dev:arm64
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'aarch64'\n\
 | 
			
		||||
cpu = 'aarch64'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="aarch64-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=aarch64-linux-gnu"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture armel
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-arm-linux-gnueabi \
 | 
			
		||||
            libacl1-dev:armel \
 | 
			
		||||
            libapparmor-dev:armel \
 | 
			
		||||
            libattr1-dev:armel \
 | 
			
		||||
            libaudit-dev:armel \
 | 
			
		||||
            libblkid-dev:armel \
 | 
			
		||||
            libc6-dev:armel \
 | 
			
		||||
            libcap-ng-dev:armel \
 | 
			
		||||
            libcurl4-gnutls-dev:armel \
 | 
			
		||||
            libdevmapper-dev:armel \
 | 
			
		||||
            libfuse-dev:armel \
 | 
			
		||||
            libglib2.0-dev:armel \
 | 
			
		||||
            libglusterfs-dev:armel \
 | 
			
		||||
            libgnutls28-dev:armel \
 | 
			
		||||
            libiscsi-dev:armel \
 | 
			
		||||
            libnl-3-dev:armel \
 | 
			
		||||
            libnl-route-3-dev:armel \
 | 
			
		||||
            libnuma-dev:armel \
 | 
			
		||||
            libparted-dev:armel \
 | 
			
		||||
            libpcap0.8-dev:armel \
 | 
			
		||||
            libpciaccess-dev:armel \
 | 
			
		||||
            librbd-dev:armel \
 | 
			
		||||
            libreadline-dev:armel \
 | 
			
		||||
            libsanlock-dev:armel \
 | 
			
		||||
            libsasl2-dev:armel \
 | 
			
		||||
            libselinux1-dev:armel \
 | 
			
		||||
            libssh-gcrypt-dev:armel \
 | 
			
		||||
            libssh2-1-dev:armel \
 | 
			
		||||
            libtirpc-dev:armel \
 | 
			
		||||
            libudev-dev:armel \
 | 
			
		||||
            libxml2-dev:armel \
 | 
			
		||||
            libyajl-dev:armel \
 | 
			
		||||
            systemtap-sdt-dev:armel
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'arm'\n\
 | 
			
		||||
cpu = 'arm'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="arm-linux-gnueabi"
 | 
			
		||||
export MESON_OPTS="--cross-file=arm-linux-gnueabi"
 | 
			
		||||
@@ -1,118 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture armhf
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-arm-linux-gnueabihf \
 | 
			
		||||
            libacl1-dev:armhf \
 | 
			
		||||
            libapparmor-dev:armhf \
 | 
			
		||||
            libattr1-dev:armhf \
 | 
			
		||||
            libaudit-dev:armhf \
 | 
			
		||||
            libblkid-dev:armhf \
 | 
			
		||||
            libc6-dev:armhf \
 | 
			
		||||
            libcap-ng-dev:armhf \
 | 
			
		||||
            libcurl4-gnutls-dev:armhf \
 | 
			
		||||
            libdevmapper-dev:armhf \
 | 
			
		||||
            libfuse-dev:armhf \
 | 
			
		||||
            libglib2.0-dev:armhf \
 | 
			
		||||
            libglusterfs-dev:armhf \
 | 
			
		||||
            libgnutls28-dev:armhf \
 | 
			
		||||
            libiscsi-dev:armhf \
 | 
			
		||||
            libnl-3-dev:armhf \
 | 
			
		||||
            libnl-route-3-dev:armhf \
 | 
			
		||||
            libnuma-dev:armhf \
 | 
			
		||||
            libparted-dev:armhf \
 | 
			
		||||
            libpcap0.8-dev:armhf \
 | 
			
		||||
            libpciaccess-dev:armhf \
 | 
			
		||||
            librbd-dev:armhf \
 | 
			
		||||
            libreadline-dev:armhf \
 | 
			
		||||
            libsanlock-dev:armhf \
 | 
			
		||||
            libsasl2-dev:armhf \
 | 
			
		||||
            libselinux1-dev:armhf \
 | 
			
		||||
            libssh-gcrypt-dev:armhf \
 | 
			
		||||
            libssh2-1-dev:armhf \
 | 
			
		||||
            libtirpc-dev:armhf \
 | 
			
		||||
            libudev-dev:armhf \
 | 
			
		||||
            libxen-dev:armhf \
 | 
			
		||||
            libxml2-dev:armhf \
 | 
			
		||||
            libyajl-dev:armhf \
 | 
			
		||||
            systemtap-sdt-dev:armhf
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'arm'\n\
 | 
			
		||||
cpu = 'armhf'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="arm-linux-gnueabihf"
 | 
			
		||||
export MESON_OPTS="--cross-file=arm-linux-gnueabihf"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture i386
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-i686-linux-gnu \
 | 
			
		||||
            libacl1-dev:i386 \
 | 
			
		||||
            libapparmor-dev:i386 \
 | 
			
		||||
            libattr1-dev:i386 \
 | 
			
		||||
            libaudit-dev:i386 \
 | 
			
		||||
            libblkid-dev:i386 \
 | 
			
		||||
            libc6-dev:i386 \
 | 
			
		||||
            libcap-ng-dev:i386 \
 | 
			
		||||
            libcurl4-gnutls-dev:i386 \
 | 
			
		||||
            libdevmapper-dev:i386 \
 | 
			
		||||
            libfuse-dev:i386 \
 | 
			
		||||
            libglib2.0-dev:i386 \
 | 
			
		||||
            libglusterfs-dev:i386 \
 | 
			
		||||
            libgnutls28-dev:i386 \
 | 
			
		||||
            libiscsi-dev:i386 \
 | 
			
		||||
            libnl-3-dev:i386 \
 | 
			
		||||
            libnl-route-3-dev:i386 \
 | 
			
		||||
            libnuma-dev:i386 \
 | 
			
		||||
            libparted-dev:i386 \
 | 
			
		||||
            libpcap0.8-dev:i386 \
 | 
			
		||||
            libpciaccess-dev:i386 \
 | 
			
		||||
            librbd-dev:i386 \
 | 
			
		||||
            libreadline-dev:i386 \
 | 
			
		||||
            libsanlock-dev:i386 \
 | 
			
		||||
            libsasl2-dev:i386 \
 | 
			
		||||
            libselinux1-dev:i386 \
 | 
			
		||||
            libssh-gcrypt-dev:i386 \
 | 
			
		||||
            libssh2-1-dev:i386 \
 | 
			
		||||
            libtirpc-dev:i386 \
 | 
			
		||||
            libudev-dev:i386 \
 | 
			
		||||
            libxml2-dev:i386 \
 | 
			
		||||
            libyajl-dev:i386 \
 | 
			
		||||
            systemtap-sdt-dev:i386
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/i686-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/i686-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'x86'\n\
 | 
			
		||||
cpu = 'i686'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="i686-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=i686-linux-gnu"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture mips64el
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-mips64el-linux-gnuabi64 \
 | 
			
		||||
            libacl1-dev:mips64el \
 | 
			
		||||
            libapparmor-dev:mips64el \
 | 
			
		||||
            libattr1-dev:mips64el \
 | 
			
		||||
            libaudit-dev:mips64el \
 | 
			
		||||
            libblkid-dev:mips64el \
 | 
			
		||||
            libc6-dev:mips64el \
 | 
			
		||||
            libcap-ng-dev:mips64el \
 | 
			
		||||
            libcurl4-gnutls-dev:mips64el \
 | 
			
		||||
            libdevmapper-dev:mips64el \
 | 
			
		||||
            libfuse-dev:mips64el \
 | 
			
		||||
            libglib2.0-dev:mips64el \
 | 
			
		||||
            libglusterfs-dev:mips64el \
 | 
			
		||||
            libgnutls28-dev:mips64el \
 | 
			
		||||
            libiscsi-dev:mips64el \
 | 
			
		||||
            libnl-3-dev:mips64el \
 | 
			
		||||
            libnl-route-3-dev:mips64el \
 | 
			
		||||
            libnuma-dev:mips64el \
 | 
			
		||||
            libparted-dev:mips64el \
 | 
			
		||||
            libpcap0.8-dev:mips64el \
 | 
			
		||||
            libpciaccess-dev:mips64el \
 | 
			
		||||
            librbd-dev:mips64el \
 | 
			
		||||
            libreadline-dev:mips64el \
 | 
			
		||||
            libsanlock-dev:mips64el \
 | 
			
		||||
            libsasl2-dev:mips64el \
 | 
			
		||||
            libselinux1-dev:mips64el \
 | 
			
		||||
            libssh-gcrypt-dev:mips64el \
 | 
			
		||||
            libssh2-1-dev:mips64el \
 | 
			
		||||
            libtirpc-dev:mips64el \
 | 
			
		||||
            libudev-dev:mips64el \
 | 
			
		||||
            libxml2-dev:mips64el \
 | 
			
		||||
            libyajl-dev:mips64el \
 | 
			
		||||
            systemtap-sdt-dev:mips64el
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'mips64'\n\
 | 
			
		||||
cpu = 'mips64el'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="mips64el-linux-gnuabi64"
 | 
			
		||||
export MESON_OPTS="--cross-file=mips64el-linux-gnuabi64"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture mipsel
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-mipsel-linux-gnu \
 | 
			
		||||
            libacl1-dev:mipsel \
 | 
			
		||||
            libapparmor-dev:mipsel \
 | 
			
		||||
            libattr1-dev:mipsel \
 | 
			
		||||
            libaudit-dev:mipsel \
 | 
			
		||||
            libblkid-dev:mipsel \
 | 
			
		||||
            libc6-dev:mipsel \
 | 
			
		||||
            libcap-ng-dev:mipsel \
 | 
			
		||||
            libcurl4-gnutls-dev:mipsel \
 | 
			
		||||
            libdevmapper-dev:mipsel \
 | 
			
		||||
            libfuse-dev:mipsel \
 | 
			
		||||
            libglib2.0-dev:mipsel \
 | 
			
		||||
            libglusterfs-dev:mipsel \
 | 
			
		||||
            libgnutls28-dev:mipsel \
 | 
			
		||||
            libiscsi-dev:mipsel \
 | 
			
		||||
            libnl-3-dev:mipsel \
 | 
			
		||||
            libnl-route-3-dev:mipsel \
 | 
			
		||||
            libnuma-dev:mipsel \
 | 
			
		||||
            libparted-dev:mipsel \
 | 
			
		||||
            libpcap0.8-dev:mipsel \
 | 
			
		||||
            libpciaccess-dev:mipsel \
 | 
			
		||||
            librbd-dev:mipsel \
 | 
			
		||||
            libreadline-dev:mipsel \
 | 
			
		||||
            libsanlock-dev:mipsel \
 | 
			
		||||
            libsasl2-dev:mipsel \
 | 
			
		||||
            libselinux1-dev:mipsel \
 | 
			
		||||
            libssh-gcrypt-dev:mipsel \
 | 
			
		||||
            libssh2-1-dev:mipsel \
 | 
			
		||||
            libtirpc-dev:mipsel \
 | 
			
		||||
            libudev-dev:mipsel \
 | 
			
		||||
            libxml2-dev:mipsel \
 | 
			
		||||
            libyajl-dev:mipsel \
 | 
			
		||||
            systemtap-sdt-dev:mipsel
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'mips'\n\
 | 
			
		||||
cpu = 'mipsel'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="mipsel-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=mipsel-linux-gnu"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture ppc64el
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-powerpc64le-linux-gnu \
 | 
			
		||||
            libacl1-dev:ppc64el \
 | 
			
		||||
            libapparmor-dev:ppc64el \
 | 
			
		||||
            libattr1-dev:ppc64el \
 | 
			
		||||
            libaudit-dev:ppc64el \
 | 
			
		||||
            libblkid-dev:ppc64el \
 | 
			
		||||
            libc6-dev:ppc64el \
 | 
			
		||||
            libcap-ng-dev:ppc64el \
 | 
			
		||||
            libcurl4-gnutls-dev:ppc64el \
 | 
			
		||||
            libdevmapper-dev:ppc64el \
 | 
			
		||||
            libfuse-dev:ppc64el \
 | 
			
		||||
            libglib2.0-dev:ppc64el \
 | 
			
		||||
            libglusterfs-dev:ppc64el \
 | 
			
		||||
            libgnutls28-dev:ppc64el \
 | 
			
		||||
            libiscsi-dev:ppc64el \
 | 
			
		||||
            libnl-3-dev:ppc64el \
 | 
			
		||||
            libnl-route-3-dev:ppc64el \
 | 
			
		||||
            libnuma-dev:ppc64el \
 | 
			
		||||
            libparted-dev:ppc64el \
 | 
			
		||||
            libpcap0.8-dev:ppc64el \
 | 
			
		||||
            libpciaccess-dev:ppc64el \
 | 
			
		||||
            librbd-dev:ppc64el \
 | 
			
		||||
            libreadline-dev:ppc64el \
 | 
			
		||||
            libsanlock-dev:ppc64el \
 | 
			
		||||
            libsasl2-dev:ppc64el \
 | 
			
		||||
            libselinux1-dev:ppc64el \
 | 
			
		||||
            libssh-gcrypt-dev:ppc64el \
 | 
			
		||||
            libssh2-1-dev:ppc64el \
 | 
			
		||||
            libtirpc-dev:ppc64el \
 | 
			
		||||
            libudev-dev:ppc64el \
 | 
			
		||||
            libxml2-dev:ppc64el \
 | 
			
		||||
            libyajl-dev:ppc64el \
 | 
			
		||||
            systemtap-sdt-dev:ppc64el
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'ppc64'\n\
 | 
			
		||||
cpu = 'powerpc64le'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="powerpc64le-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=powerpc64le-linux-gnu"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture s390x
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-s390x-linux-gnu \
 | 
			
		||||
            libacl1-dev:s390x \
 | 
			
		||||
            libapparmor-dev:s390x \
 | 
			
		||||
            libattr1-dev:s390x \
 | 
			
		||||
            libaudit-dev:s390x \
 | 
			
		||||
            libblkid-dev:s390x \
 | 
			
		||||
            libc6-dev:s390x \
 | 
			
		||||
            libcap-ng-dev:s390x \
 | 
			
		||||
            libcurl4-gnutls-dev:s390x \
 | 
			
		||||
            libdevmapper-dev:s390x \
 | 
			
		||||
            libfuse-dev:s390x \
 | 
			
		||||
            libglib2.0-dev:s390x \
 | 
			
		||||
            libglusterfs-dev:s390x \
 | 
			
		||||
            libgnutls28-dev:s390x \
 | 
			
		||||
            libiscsi-dev:s390x \
 | 
			
		||||
            libnl-3-dev:s390x \
 | 
			
		||||
            libnl-route-3-dev:s390x \
 | 
			
		||||
            libnuma-dev:s390x \
 | 
			
		||||
            libparted-dev:s390x \
 | 
			
		||||
            libpcap0.8-dev:s390x \
 | 
			
		||||
            libpciaccess-dev:s390x \
 | 
			
		||||
            librbd-dev:s390x \
 | 
			
		||||
            libreadline-dev:s390x \
 | 
			
		||||
            libsanlock-dev:s390x \
 | 
			
		||||
            libsasl2-dev:s390x \
 | 
			
		||||
            libselinux1-dev:s390x \
 | 
			
		||||
            libssh-gcrypt-dev:s390x \
 | 
			
		||||
            libssh2-1-dev:s390x \
 | 
			
		||||
            libtirpc-dev:s390x \
 | 
			
		||||
            libudev-dev:s390x \
 | 
			
		||||
            libxml2-dev:s390x \
 | 
			
		||||
            libyajl-dev:s390x \
 | 
			
		||||
            systemtap-sdt-dev:s390x
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/s390x-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/s390x-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 's390x'\n\
 | 
			
		||||
cpu = 's390x'\n\
 | 
			
		||||
endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="s390x-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=s390x-linux-gnu"
 | 
			
		||||
@@ -1,100 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            clang \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gcc \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libacl1-dev \
 | 
			
		||||
            libapparmor-dev \
 | 
			
		||||
            libattr1-dev \
 | 
			
		||||
            libaudit-dev \
 | 
			
		||||
            libblkid-dev \
 | 
			
		||||
            libc6-dev \
 | 
			
		||||
            libcap-ng-dev \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libcurl4-gnutls-dev \
 | 
			
		||||
            libdevmapper-dev \
 | 
			
		||||
            libfuse-dev \
 | 
			
		||||
            libglib2.0-dev \
 | 
			
		||||
            libglusterfs-dev \
 | 
			
		||||
            libgnutls28-dev \
 | 
			
		||||
            libiscsi-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libnl-3-dev \
 | 
			
		||||
            libnl-route-3-dev \
 | 
			
		||||
            libnuma-dev \
 | 
			
		||||
            libparted-dev \
 | 
			
		||||
            libpcap0.8-dev \
 | 
			
		||||
            libpciaccess-dev \
 | 
			
		||||
            librbd-dev \
 | 
			
		||||
            libreadline-dev \
 | 
			
		||||
            libsanlock-dev \
 | 
			
		||||
            libsasl2-dev \
 | 
			
		||||
            libselinux1-dev \
 | 
			
		||||
            libssh-gcrypt-dev \
 | 
			
		||||
            libssh2-1-dev \
 | 
			
		||||
            libtirpc-dev \
 | 
			
		||||
            libudev-dev \
 | 
			
		||||
            libxen-dev \
 | 
			
		||||
            libxml2-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            libyajl-dev \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            systemtap-sdt-dev \
 | 
			
		||||
            wireshark-dev \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,118 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture arm64
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-aarch64-linux-gnu \
 | 
			
		||||
            libacl1-dev:arm64 \
 | 
			
		||||
            libapparmor-dev:arm64 \
 | 
			
		||||
            libattr1-dev:arm64 \
 | 
			
		||||
            libaudit-dev:arm64 \
 | 
			
		||||
            libblkid-dev:arm64 \
 | 
			
		||||
            libc6-dev:arm64 \
 | 
			
		||||
            libcap-ng-dev:arm64 \
 | 
			
		||||
            libcurl4-gnutls-dev:arm64 \
 | 
			
		||||
            libdevmapper-dev:arm64 \
 | 
			
		||||
            libfuse-dev:arm64 \
 | 
			
		||||
            libglib2.0-dev:arm64 \
 | 
			
		||||
            libglusterfs-dev:arm64 \
 | 
			
		||||
            libgnutls28-dev:arm64 \
 | 
			
		||||
            libiscsi-dev:arm64 \
 | 
			
		||||
            libnl-3-dev:arm64 \
 | 
			
		||||
            libnl-route-3-dev:arm64 \
 | 
			
		||||
            libnuma-dev:arm64 \
 | 
			
		||||
            libparted-dev:arm64 \
 | 
			
		||||
            libpcap0.8-dev:arm64 \
 | 
			
		||||
            libpciaccess-dev:arm64 \
 | 
			
		||||
            librbd-dev:arm64 \
 | 
			
		||||
            libreadline-dev:arm64 \
 | 
			
		||||
            libsanlock-dev:arm64 \
 | 
			
		||||
            libsasl2-dev:arm64 \
 | 
			
		||||
            libselinux1-dev:arm64 \
 | 
			
		||||
            libssh-gcrypt-dev:arm64 \
 | 
			
		||||
            libssh2-1-dev:arm64 \
 | 
			
		||||
            libtirpc-dev:arm64 \
 | 
			
		||||
            libudev-dev:arm64 \
 | 
			
		||||
            libxen-dev:arm64 \
 | 
			
		||||
            libxml2-dev:arm64 \
 | 
			
		||||
            libyajl-dev:arm64 \
 | 
			
		||||
            systemtap-sdt-dev:arm64
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'aarch64'\n\
 | 
			
		||||
cpu = 'aarch64'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="aarch64-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=aarch64-linux-gnu"
 | 
			
		||||
@@ -1,116 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture armel
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-arm-linux-gnueabi \
 | 
			
		||||
            libacl1-dev:armel \
 | 
			
		||||
            libapparmor-dev:armel \
 | 
			
		||||
            libattr1-dev:armel \
 | 
			
		||||
            libaudit-dev:armel \
 | 
			
		||||
            libblkid-dev:armel \
 | 
			
		||||
            libc6-dev:armel \
 | 
			
		||||
            libcap-ng-dev:armel \
 | 
			
		||||
            libcurl4-gnutls-dev:armel \
 | 
			
		||||
            libdevmapper-dev:armel \
 | 
			
		||||
            libfuse-dev:armel \
 | 
			
		||||
            libglib2.0-dev:armel \
 | 
			
		||||
            libgnutls28-dev:armel \
 | 
			
		||||
            libiscsi-dev:armel \
 | 
			
		||||
            libnl-3-dev:armel \
 | 
			
		||||
            libnl-route-3-dev:armel \
 | 
			
		||||
            libnuma-dev:armel \
 | 
			
		||||
            libparted-dev:armel \
 | 
			
		||||
            libpcap0.8-dev:armel \
 | 
			
		||||
            libpciaccess-dev:armel \
 | 
			
		||||
            librbd-dev:armel \
 | 
			
		||||
            libreadline-dev:armel \
 | 
			
		||||
            libsanlock-dev:armel \
 | 
			
		||||
            libsasl2-dev:armel \
 | 
			
		||||
            libselinux1-dev:armel \
 | 
			
		||||
            libssh-gcrypt-dev:armel \
 | 
			
		||||
            libssh2-1-dev:armel \
 | 
			
		||||
            libtirpc-dev:armel \
 | 
			
		||||
            libudev-dev:armel \
 | 
			
		||||
            libxml2-dev:armel \
 | 
			
		||||
            libyajl-dev:armel \
 | 
			
		||||
            systemtap-sdt-dev:armel
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'arm'\n\
 | 
			
		||||
cpu = 'arm'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="arm-linux-gnueabi"
 | 
			
		||||
export MESON_OPTS="--cross-file=arm-linux-gnueabi"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture armhf
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-arm-linux-gnueabihf \
 | 
			
		||||
            libacl1-dev:armhf \
 | 
			
		||||
            libapparmor-dev:armhf \
 | 
			
		||||
            libattr1-dev:armhf \
 | 
			
		||||
            libaudit-dev:armhf \
 | 
			
		||||
            libblkid-dev:armhf \
 | 
			
		||||
            libc6-dev:armhf \
 | 
			
		||||
            libcap-ng-dev:armhf \
 | 
			
		||||
            libcurl4-gnutls-dev:armhf \
 | 
			
		||||
            libdevmapper-dev:armhf \
 | 
			
		||||
            libfuse-dev:armhf \
 | 
			
		||||
            libglib2.0-dev:armhf \
 | 
			
		||||
            libgnutls28-dev:armhf \
 | 
			
		||||
            libiscsi-dev:armhf \
 | 
			
		||||
            libnl-3-dev:armhf \
 | 
			
		||||
            libnl-route-3-dev:armhf \
 | 
			
		||||
            libnuma-dev:armhf \
 | 
			
		||||
            libparted-dev:armhf \
 | 
			
		||||
            libpcap0.8-dev:armhf \
 | 
			
		||||
            libpciaccess-dev:armhf \
 | 
			
		||||
            librbd-dev:armhf \
 | 
			
		||||
            libreadline-dev:armhf \
 | 
			
		||||
            libsanlock-dev:armhf \
 | 
			
		||||
            libsasl2-dev:armhf \
 | 
			
		||||
            libselinux1-dev:armhf \
 | 
			
		||||
            libssh-gcrypt-dev:armhf \
 | 
			
		||||
            libssh2-1-dev:armhf \
 | 
			
		||||
            libtirpc-dev:armhf \
 | 
			
		||||
            libudev-dev:armhf \
 | 
			
		||||
            libxen-dev:armhf \
 | 
			
		||||
            libxml2-dev:armhf \
 | 
			
		||||
            libyajl-dev:armhf \
 | 
			
		||||
            systemtap-sdt-dev:armhf
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'arm'\n\
 | 
			
		||||
cpu = 'armhf'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="arm-linux-gnueabihf"
 | 
			
		||||
export MESON_OPTS="--cross-file=arm-linux-gnueabihf"
 | 
			
		||||
@@ -1,116 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture i386
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-i686-linux-gnu \
 | 
			
		||||
            libacl1-dev:i386 \
 | 
			
		||||
            libapparmor-dev:i386 \
 | 
			
		||||
            libattr1-dev:i386 \
 | 
			
		||||
            libaudit-dev:i386 \
 | 
			
		||||
            libblkid-dev:i386 \
 | 
			
		||||
            libc6-dev:i386 \
 | 
			
		||||
            libcap-ng-dev:i386 \
 | 
			
		||||
            libcurl4-gnutls-dev:i386 \
 | 
			
		||||
            libdevmapper-dev:i386 \
 | 
			
		||||
            libfuse-dev:i386 \
 | 
			
		||||
            libglib2.0-dev:i386 \
 | 
			
		||||
            libgnutls28-dev:i386 \
 | 
			
		||||
            libiscsi-dev:i386 \
 | 
			
		||||
            libnl-3-dev:i386 \
 | 
			
		||||
            libnl-route-3-dev:i386 \
 | 
			
		||||
            libnuma-dev:i386 \
 | 
			
		||||
            libparted-dev:i386 \
 | 
			
		||||
            libpcap0.8-dev:i386 \
 | 
			
		||||
            libpciaccess-dev:i386 \
 | 
			
		||||
            librbd-dev:i386 \
 | 
			
		||||
            libreadline-dev:i386 \
 | 
			
		||||
            libsanlock-dev:i386 \
 | 
			
		||||
            libsasl2-dev:i386 \
 | 
			
		||||
            libselinux1-dev:i386 \
 | 
			
		||||
            libssh-gcrypt-dev:i386 \
 | 
			
		||||
            libssh2-1-dev:i386 \
 | 
			
		||||
            libtirpc-dev:i386 \
 | 
			
		||||
            libudev-dev:i386 \
 | 
			
		||||
            libxml2-dev:i386 \
 | 
			
		||||
            libyajl-dev:i386 \
 | 
			
		||||
            systemtap-sdt-dev:i386
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/i686-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/i686-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'x86'\n\
 | 
			
		||||
cpu = 'i686'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="i686-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=i686-linux-gnu"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture mips64el
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-mips64el-linux-gnuabi64 \
 | 
			
		||||
            libacl1-dev:mips64el \
 | 
			
		||||
            libapparmor-dev:mips64el \
 | 
			
		||||
            libattr1-dev:mips64el \
 | 
			
		||||
            libaudit-dev:mips64el \
 | 
			
		||||
            libblkid-dev:mips64el \
 | 
			
		||||
            libc6-dev:mips64el \
 | 
			
		||||
            libcap-ng-dev:mips64el \
 | 
			
		||||
            libcurl4-gnutls-dev:mips64el \
 | 
			
		||||
            libdevmapper-dev:mips64el \
 | 
			
		||||
            libfuse-dev:mips64el \
 | 
			
		||||
            libglib2.0-dev:mips64el \
 | 
			
		||||
            libglusterfs-dev:mips64el \
 | 
			
		||||
            libgnutls28-dev:mips64el \
 | 
			
		||||
            libiscsi-dev:mips64el \
 | 
			
		||||
            libnl-3-dev:mips64el \
 | 
			
		||||
            libnl-route-3-dev:mips64el \
 | 
			
		||||
            libnuma-dev:mips64el \
 | 
			
		||||
            libparted-dev:mips64el \
 | 
			
		||||
            libpcap0.8-dev:mips64el \
 | 
			
		||||
            libpciaccess-dev:mips64el \
 | 
			
		||||
            librbd-dev:mips64el \
 | 
			
		||||
            libreadline-dev:mips64el \
 | 
			
		||||
            libsanlock-dev:mips64el \
 | 
			
		||||
            libsasl2-dev:mips64el \
 | 
			
		||||
            libselinux1-dev:mips64el \
 | 
			
		||||
            libssh-gcrypt-dev:mips64el \
 | 
			
		||||
            libssh2-1-dev:mips64el \
 | 
			
		||||
            libtirpc-dev:mips64el \
 | 
			
		||||
            libudev-dev:mips64el \
 | 
			
		||||
            libxml2-dev:mips64el \
 | 
			
		||||
            libyajl-dev:mips64el \
 | 
			
		||||
            systemtap-sdt-dev:mips64el
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'mips64'\n\
 | 
			
		||||
cpu = 'mips64el'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="mips64el-linux-gnuabi64"
 | 
			
		||||
export MESON_OPTS="--cross-file=mips64el-linux-gnuabi64"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture ppc64el
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-powerpc64le-linux-gnu \
 | 
			
		||||
            libacl1-dev:ppc64el \
 | 
			
		||||
            libapparmor-dev:ppc64el \
 | 
			
		||||
            libattr1-dev:ppc64el \
 | 
			
		||||
            libaudit-dev:ppc64el \
 | 
			
		||||
            libblkid-dev:ppc64el \
 | 
			
		||||
            libc6-dev:ppc64el \
 | 
			
		||||
            libcap-ng-dev:ppc64el \
 | 
			
		||||
            libcurl4-gnutls-dev:ppc64el \
 | 
			
		||||
            libdevmapper-dev:ppc64el \
 | 
			
		||||
            libfuse-dev:ppc64el \
 | 
			
		||||
            libglib2.0-dev:ppc64el \
 | 
			
		||||
            libglusterfs-dev:ppc64el \
 | 
			
		||||
            libgnutls28-dev:ppc64el \
 | 
			
		||||
            libiscsi-dev:ppc64el \
 | 
			
		||||
            libnl-3-dev:ppc64el \
 | 
			
		||||
            libnl-route-3-dev:ppc64el \
 | 
			
		||||
            libnuma-dev:ppc64el \
 | 
			
		||||
            libparted-dev:ppc64el \
 | 
			
		||||
            libpcap0.8-dev:ppc64el \
 | 
			
		||||
            libpciaccess-dev:ppc64el \
 | 
			
		||||
            librbd-dev:ppc64el \
 | 
			
		||||
            libreadline-dev:ppc64el \
 | 
			
		||||
            libsanlock-dev:ppc64el \
 | 
			
		||||
            libsasl2-dev:ppc64el \
 | 
			
		||||
            libselinux1-dev:ppc64el \
 | 
			
		||||
            libssh-gcrypt-dev:ppc64el \
 | 
			
		||||
            libssh2-1-dev:ppc64el \
 | 
			
		||||
            libtirpc-dev:ppc64el \
 | 
			
		||||
            libudev-dev:ppc64el \
 | 
			
		||||
            libxml2-dev:ppc64el \
 | 
			
		||||
            libyajl-dev:ppc64el \
 | 
			
		||||
            systemtap-sdt-dev:ppc64el
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'ppc64'\n\
 | 
			
		||||
cpu = 'powerpc64le'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="powerpc64le-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=powerpc64le-linux-gnu"
 | 
			
		||||
@@ -1,117 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    dpkg --add-architecture s390x
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y dpkg-dev
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            gcc-s390x-linux-gnu \
 | 
			
		||||
            libacl1-dev:s390x \
 | 
			
		||||
            libapparmor-dev:s390x \
 | 
			
		||||
            libattr1-dev:s390x \
 | 
			
		||||
            libaudit-dev:s390x \
 | 
			
		||||
            libblkid-dev:s390x \
 | 
			
		||||
            libc6-dev:s390x \
 | 
			
		||||
            libcap-ng-dev:s390x \
 | 
			
		||||
            libcurl4-gnutls-dev:s390x \
 | 
			
		||||
            libdevmapper-dev:s390x \
 | 
			
		||||
            libfuse-dev:s390x \
 | 
			
		||||
            libglib2.0-dev:s390x \
 | 
			
		||||
            libglusterfs-dev:s390x \
 | 
			
		||||
            libgnutls28-dev:s390x \
 | 
			
		||||
            libiscsi-dev:s390x \
 | 
			
		||||
            libnl-3-dev:s390x \
 | 
			
		||||
            libnl-route-3-dev:s390x \
 | 
			
		||||
            libnuma-dev:s390x \
 | 
			
		||||
            libparted-dev:s390x \
 | 
			
		||||
            libpcap0.8-dev:s390x \
 | 
			
		||||
            libpciaccess-dev:s390x \
 | 
			
		||||
            librbd-dev:s390x \
 | 
			
		||||
            libreadline-dev:s390x \
 | 
			
		||||
            libsanlock-dev:s390x \
 | 
			
		||||
            libsasl2-dev:s390x \
 | 
			
		||||
            libselinux1-dev:s390x \
 | 
			
		||||
            libssh-gcrypt-dev:s390x \
 | 
			
		||||
            libssh2-1-dev:s390x \
 | 
			
		||||
            libtirpc-dev:s390x \
 | 
			
		||||
            libudev-dev:s390x \
 | 
			
		||||
            libxml2-dev:s390x \
 | 
			
		||||
            libyajl-dev:s390x \
 | 
			
		||||
            systemtap-sdt-dev:s390x
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/s390x-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/s390x-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 's390x'\n\
 | 
			
		||||
cpu = 's390x'\n\
 | 
			
		||||
endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="s390x-linux-gnu"
 | 
			
		||||
export MESON_OPTS="--cross-file=s390x-linux-gnu"
 | 
			
		||||
@@ -1,100 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            clang \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gcc \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libacl1-dev \
 | 
			
		||||
            libapparmor-dev \
 | 
			
		||||
            libattr1-dev \
 | 
			
		||||
            libaudit-dev \
 | 
			
		||||
            libblkid-dev \
 | 
			
		||||
            libc6-dev \
 | 
			
		||||
            libcap-ng-dev \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libcurl4-gnutls-dev \
 | 
			
		||||
            libdevmapper-dev \
 | 
			
		||||
            libfuse-dev \
 | 
			
		||||
            libglib2.0-dev \
 | 
			
		||||
            libglusterfs-dev \
 | 
			
		||||
            libgnutls28-dev \
 | 
			
		||||
            libiscsi-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libnl-3-dev \
 | 
			
		||||
            libnl-route-3-dev \
 | 
			
		||||
            libnuma-dev \
 | 
			
		||||
            libparted-dev \
 | 
			
		||||
            libpcap0.8-dev \
 | 
			
		||||
            libpciaccess-dev \
 | 
			
		||||
            librbd-dev \
 | 
			
		||||
            libreadline-dev \
 | 
			
		||||
            libsanlock-dev \
 | 
			
		||||
            libsasl2-dev \
 | 
			
		||||
            libselinux1-dev \
 | 
			
		||||
            libssh-gcrypt-dev \
 | 
			
		||||
            libssh2-1-dev \
 | 
			
		||||
            libtirpc-dev \
 | 
			
		||||
            libudev-dev \
 | 
			
		||||
            libxen-dev \
 | 
			
		||||
            libxml2-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            libyajl-dev \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            systemtap-sdt-dev \
 | 
			
		||||
            wireshark-dev \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,99 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf update -y
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        audit-libs-devel \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        clang \
 | 
			
		||||
        codespell \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cppi \
 | 
			
		||||
        cyrus-sasl-devel \
 | 
			
		||||
        device-mapper-devel \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        fuse-devel \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib2-devel \
 | 
			
		||||
        glibc-devel \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        glusterfs-api-devel \
 | 
			
		||||
        gnutls-devel \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libacl-devel \
 | 
			
		||||
        libattr-devel \
 | 
			
		||||
        libblkid-devel \
 | 
			
		||||
        libcap-ng-devel \
 | 
			
		||||
        libcurl-devel \
 | 
			
		||||
        libiscsi-devel \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libnl3-devel \
 | 
			
		||||
        libpcap-devel \
 | 
			
		||||
        libpciaccess-devel \
 | 
			
		||||
        librbd-devel \
 | 
			
		||||
        libselinux-devel \
 | 
			
		||||
        libssh-devel \
 | 
			
		||||
        libssh2-devel \
 | 
			
		||||
        libtirpc-devel \
 | 
			
		||||
        libwsman-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxml2-devel \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numactl-devel \
 | 
			
		||||
        numad \
 | 
			
		||||
        parted-devel \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        pkgconfig \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-black \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-devel \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sanlock-devel \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-devel \
 | 
			
		||||
        systemd-rpm-macros \
 | 
			
		||||
        systemtap-sdt-devel \
 | 
			
		||||
        wireshark-devel \
 | 
			
		||||
        xen-devel \
 | 
			
		||||
        yajl-devel
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,78 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf update -y
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        codespell \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cppi \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numad \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-black \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-rpm-macros
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        mingw32-curl \
 | 
			
		||||
        mingw32-dlfcn \
 | 
			
		||||
        mingw32-gcc \
 | 
			
		||||
        mingw32-gettext \
 | 
			
		||||
        mingw32-glib2 \
 | 
			
		||||
        mingw32-gnutls \
 | 
			
		||||
        mingw32-headers \
 | 
			
		||||
        mingw32-libssh2 \
 | 
			
		||||
        mingw32-libxml2 \
 | 
			
		||||
        mingw32-pkg-config \
 | 
			
		||||
        mingw32-portablexdr \
 | 
			
		||||
        mingw32-readline
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-w64-mingw32-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-w64-mingw32-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="i686-w64-mingw32"
 | 
			
		||||
export MESON_OPTS="--cross-file=/usr/share/mingw/toolchain-mingw32.meson"
 | 
			
		||||
@@ -1,78 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf update -y
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        codespell \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cppi \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numad \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-black \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-rpm-macros
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        mingw64-curl \
 | 
			
		||||
        mingw64-dlfcn \
 | 
			
		||||
        mingw64-gcc \
 | 
			
		||||
        mingw64-gettext \
 | 
			
		||||
        mingw64-glib2 \
 | 
			
		||||
        mingw64-gnutls \
 | 
			
		||||
        mingw64-headers \
 | 
			
		||||
        mingw64-libssh2 \
 | 
			
		||||
        mingw64-libxml2 \
 | 
			
		||||
        mingw64-pkg-config \
 | 
			
		||||
        mingw64-portablexdr \
 | 
			
		||||
        mingw64-readline
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/x86_64-w64-mingw32-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/x86_64-w64-mingw32-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="x86_64-w64-mingw32"
 | 
			
		||||
export MESON_OPTS="--cross-file=/usr/share/mingw/toolchain-mingw64.meson"
 | 
			
		||||
@@ -1,99 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf update -y
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        audit-libs-devel \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        clang \
 | 
			
		||||
        codespell \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cppi \
 | 
			
		||||
        cyrus-sasl-devel \
 | 
			
		||||
        device-mapper-devel \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        fuse-devel \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib2-devel \
 | 
			
		||||
        glibc-devel \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        glusterfs-api-devel \
 | 
			
		||||
        gnutls-devel \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libacl-devel \
 | 
			
		||||
        libattr-devel \
 | 
			
		||||
        libblkid-devel \
 | 
			
		||||
        libcap-ng-devel \
 | 
			
		||||
        libcurl-devel \
 | 
			
		||||
        libiscsi-devel \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libnl3-devel \
 | 
			
		||||
        libpcap-devel \
 | 
			
		||||
        libpciaccess-devel \
 | 
			
		||||
        librbd-devel \
 | 
			
		||||
        libselinux-devel \
 | 
			
		||||
        libssh-devel \
 | 
			
		||||
        libssh2-devel \
 | 
			
		||||
        libtirpc-devel \
 | 
			
		||||
        libwsman-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxml2-devel \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numactl-devel \
 | 
			
		||||
        numad \
 | 
			
		||||
        parted-devel \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        pkgconfig \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-black \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-devel \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sanlock-devel \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-devel \
 | 
			
		||||
        systemd-rpm-macros \
 | 
			
		||||
        systemtap-sdt-devel \
 | 
			
		||||
        wireshark-devel \
 | 
			
		||||
        xen-devel \
 | 
			
		||||
        yajl-devel
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,79 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf update -y --nogpgcheck fedora-gpg-keys
 | 
			
		||||
    dnf distro-sync -y
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion-devel \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        codespell \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cppi \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numad \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-black \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-rpm-macros
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        mingw32-curl \
 | 
			
		||||
        mingw32-dlfcn \
 | 
			
		||||
        mingw32-gcc \
 | 
			
		||||
        mingw32-gettext \
 | 
			
		||||
        mingw32-glib2 \
 | 
			
		||||
        mingw32-gnutls \
 | 
			
		||||
        mingw32-headers \
 | 
			
		||||
        mingw32-libssh2 \
 | 
			
		||||
        mingw32-libxml2 \
 | 
			
		||||
        mingw32-pkg-config \
 | 
			
		||||
        mingw32-portablexdr \
 | 
			
		||||
        mingw32-readline
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-w64-mingw32-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-w64-mingw32-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="i686-w64-mingw32"
 | 
			
		||||
export MESON_OPTS="--cross-file=/usr/share/mingw/toolchain-mingw32.meson"
 | 
			
		||||
@@ -1,79 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf update -y --nogpgcheck fedora-gpg-keys
 | 
			
		||||
    dnf distro-sync -y
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion-devel \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        codespell \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cppi \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numad \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-black \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-rpm-macros
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        mingw64-curl \
 | 
			
		||||
        mingw64-dlfcn \
 | 
			
		||||
        mingw64-gcc \
 | 
			
		||||
        mingw64-gettext \
 | 
			
		||||
        mingw64-glib2 \
 | 
			
		||||
        mingw64-gnutls \
 | 
			
		||||
        mingw64-headers \
 | 
			
		||||
        mingw64-libssh2 \
 | 
			
		||||
        mingw64-libxml2 \
 | 
			
		||||
        mingw64-pkg-config \
 | 
			
		||||
        mingw64-portablexdr \
 | 
			
		||||
        mingw64-readline
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/x86_64-w64-mingw32-cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/x86_64-w64-mingw32-gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
export ABI="x86_64-w64-mingw32"
 | 
			
		||||
export MESON_OPTS="--cross-file=/usr/share/mingw/toolchain-mingw64.meson"
 | 
			
		||||
@@ -1,100 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    dnf update -y --nogpgcheck fedora-gpg-keys
 | 
			
		||||
    dnf distro-sync -y
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        audit-libs-devel \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion-devel \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        clang \
 | 
			
		||||
        codespell \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cppi \
 | 
			
		||||
        cyrus-sasl-devel \
 | 
			
		||||
        device-mapper-devel \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        fuse-devel \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib2-devel \
 | 
			
		||||
        glibc-devel \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        glusterfs-api-devel \
 | 
			
		||||
        gnutls-devel \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libacl-devel \
 | 
			
		||||
        libattr-devel \
 | 
			
		||||
        libblkid-devel \
 | 
			
		||||
        libcap-ng-devel \
 | 
			
		||||
        libcurl-devel \
 | 
			
		||||
        libiscsi-devel \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libnl3-devel \
 | 
			
		||||
        libpcap-devel \
 | 
			
		||||
        libpciaccess-devel \
 | 
			
		||||
        librbd-devel \
 | 
			
		||||
        libselinux-devel \
 | 
			
		||||
        libssh-devel \
 | 
			
		||||
        libssh2-devel \
 | 
			
		||||
        libtirpc-devel \
 | 
			
		||||
        libwsman-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxml2-devel \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numactl-devel \
 | 
			
		||||
        numad \
 | 
			
		||||
        parted-devel \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        pkgconfig \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-black \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-devel \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sanlock-devel \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-devel \
 | 
			
		||||
        systemd-rpm-macros \
 | 
			
		||||
        systemtap-sdt-devel \
 | 
			
		||||
        wireshark-devel \
 | 
			
		||||
        xen-devel \
 | 
			
		||||
        yajl-devel
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,102 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    zypper update -y
 | 
			
		||||
    zypper install -y \
 | 
			
		||||
           audit-devel \
 | 
			
		||||
           augeas \
 | 
			
		||||
           augeas-lenses \
 | 
			
		||||
           bash-completion-devel \
 | 
			
		||||
           ca-certificates \
 | 
			
		||||
           ccache \
 | 
			
		||||
           clang \
 | 
			
		||||
           clang-devel \
 | 
			
		||||
           codespell \
 | 
			
		||||
           cpp \
 | 
			
		||||
           cppi \
 | 
			
		||||
           cyrus-sasl-devel \
 | 
			
		||||
           device-mapper-devel \
 | 
			
		||||
           diffutils \
 | 
			
		||||
           dwarves \
 | 
			
		||||
           ebtables \
 | 
			
		||||
           fuse-devel \
 | 
			
		||||
           gcc \
 | 
			
		||||
           gettext-runtime \
 | 
			
		||||
           git \
 | 
			
		||||
           glib2-devel \
 | 
			
		||||
           glibc-devel \
 | 
			
		||||
           glibc-locale \
 | 
			
		||||
           glusterfs-devel \
 | 
			
		||||
           grep \
 | 
			
		||||
           iproute2 \
 | 
			
		||||
           iptables \
 | 
			
		||||
           kmod \
 | 
			
		||||
           libacl-devel \
 | 
			
		||||
           libapparmor-devel \
 | 
			
		||||
           libattr-devel \
 | 
			
		||||
           libblkid-devel \
 | 
			
		||||
           libcap-ng-devel \
 | 
			
		||||
           libcurl-devel \
 | 
			
		||||
           libgnutls-devel \
 | 
			
		||||
           libiscsi-devel \
 | 
			
		||||
           libnbd-devel \
 | 
			
		||||
           libnl3-devel \
 | 
			
		||||
           libnuma-devel \
 | 
			
		||||
           libpcap-devel \
 | 
			
		||||
           libpciaccess-devel \
 | 
			
		||||
           librbd-devel \
 | 
			
		||||
           libselinux-devel \
 | 
			
		||||
           libssh-devel \
 | 
			
		||||
           libssh2-devel \
 | 
			
		||||
           libtirpc-devel \
 | 
			
		||||
           libudev-devel \
 | 
			
		||||
           libwsman-devel \
 | 
			
		||||
           libxml2 \
 | 
			
		||||
           libxml2-devel \
 | 
			
		||||
           libxslt \
 | 
			
		||||
           libyajl-devel \
 | 
			
		||||
           lvm2 \
 | 
			
		||||
           make \
 | 
			
		||||
           meson \
 | 
			
		||||
           nfs-utils \
 | 
			
		||||
           ninja \
 | 
			
		||||
           numad \
 | 
			
		||||
           open-iscsi \
 | 
			
		||||
           parted-devel \
 | 
			
		||||
           perl-base \
 | 
			
		||||
           pkgconfig \
 | 
			
		||||
           polkit \
 | 
			
		||||
           python3-base \
 | 
			
		||||
           python3-docutils \
 | 
			
		||||
           python3-flake8 \
 | 
			
		||||
           python3-pip \
 | 
			
		||||
           python3-pytest \
 | 
			
		||||
           python3-setuptools \
 | 
			
		||||
           python3-wheel \
 | 
			
		||||
           qemu-tools \
 | 
			
		||||
           readline-devel \
 | 
			
		||||
           rpm-build \
 | 
			
		||||
           sanlock-devel \
 | 
			
		||||
           sed \
 | 
			
		||||
           systemd-rpm-macros \
 | 
			
		||||
           systemtap-sdt-devel \
 | 
			
		||||
           wireshark-devel \
 | 
			
		||||
           xen-devel
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
    /usr/bin/pip3 install black
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,99 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    zypper dist-upgrade -y
 | 
			
		||||
    zypper install -y \
 | 
			
		||||
           audit-devel \
 | 
			
		||||
           augeas \
 | 
			
		||||
           augeas-lenses \
 | 
			
		||||
           bash-completion-devel \
 | 
			
		||||
           ca-certificates \
 | 
			
		||||
           ccache \
 | 
			
		||||
           clang \
 | 
			
		||||
           clang-devel \
 | 
			
		||||
           codespell \
 | 
			
		||||
           cpp \
 | 
			
		||||
           cppi \
 | 
			
		||||
           cyrus-sasl-devel \
 | 
			
		||||
           device-mapper-devel \
 | 
			
		||||
           diffutils \
 | 
			
		||||
           dwarves \
 | 
			
		||||
           ebtables \
 | 
			
		||||
           fuse-devel \
 | 
			
		||||
           gcc \
 | 
			
		||||
           gettext-runtime \
 | 
			
		||||
           git \
 | 
			
		||||
           glib2-devel \
 | 
			
		||||
           glibc-devel \
 | 
			
		||||
           glibc-locale \
 | 
			
		||||
           glusterfs-devel \
 | 
			
		||||
           grep \
 | 
			
		||||
           iproute2 \
 | 
			
		||||
           iptables \
 | 
			
		||||
           kmod \
 | 
			
		||||
           libacl-devel \
 | 
			
		||||
           libapparmor-devel \
 | 
			
		||||
           libattr-devel \
 | 
			
		||||
           libblkid-devel \
 | 
			
		||||
           libcap-ng-devel \
 | 
			
		||||
           libcurl-devel \
 | 
			
		||||
           libgnutls-devel \
 | 
			
		||||
           libiscsi-devel \
 | 
			
		||||
           libnbd-devel \
 | 
			
		||||
           libnl3-devel \
 | 
			
		||||
           libnuma-devel \
 | 
			
		||||
           libpcap-devel \
 | 
			
		||||
           libpciaccess-devel \
 | 
			
		||||
           librbd-devel \
 | 
			
		||||
           libselinux-devel \
 | 
			
		||||
           libssh-devel \
 | 
			
		||||
           libssh2-devel \
 | 
			
		||||
           libtirpc-devel \
 | 
			
		||||
           libudev-devel \
 | 
			
		||||
           libwsman-devel \
 | 
			
		||||
           libxml2 \
 | 
			
		||||
           libxml2-devel \
 | 
			
		||||
           libxslt \
 | 
			
		||||
           libyajl-devel \
 | 
			
		||||
           lvm2 \
 | 
			
		||||
           make \
 | 
			
		||||
           meson \
 | 
			
		||||
           nfs-utils \
 | 
			
		||||
           ninja \
 | 
			
		||||
           numad \
 | 
			
		||||
           open-iscsi \
 | 
			
		||||
           parted-devel \
 | 
			
		||||
           perl-base \
 | 
			
		||||
           pkgconfig \
 | 
			
		||||
           polkit \
 | 
			
		||||
           python3-base \
 | 
			
		||||
           python3-black \
 | 
			
		||||
           python3-docutils \
 | 
			
		||||
           python3-flake8 \
 | 
			
		||||
           python3-pytest \
 | 
			
		||||
           qemu-tools \
 | 
			
		||||
           readline-devel \
 | 
			
		||||
           rpm-build \
 | 
			
		||||
           sanlock-devel \
 | 
			
		||||
           sed \
 | 
			
		||||
           systemd-rpm-macros \
 | 
			
		||||
           systemtap-sdt-devel \
 | 
			
		||||
           wireshark-devel \
 | 
			
		||||
           xen-devel
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    rpm -qa | sort > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,101 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            clang \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gcc \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libacl1-dev \
 | 
			
		||||
            libapparmor-dev \
 | 
			
		||||
            libattr1-dev \
 | 
			
		||||
            libaudit-dev \
 | 
			
		||||
            libblkid-dev \
 | 
			
		||||
            libc6-dev \
 | 
			
		||||
            libcap-ng-dev \
 | 
			
		||||
            libclang-dev \
 | 
			
		||||
            libcurl4-gnutls-dev \
 | 
			
		||||
            libdevmapper-dev \
 | 
			
		||||
            libfuse-dev \
 | 
			
		||||
            libglib2.0-dev \
 | 
			
		||||
            libglusterfs-dev \
 | 
			
		||||
            libgnutls28-dev \
 | 
			
		||||
            libiscsi-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libnl-3-dev \
 | 
			
		||||
            libnl-route-3-dev \
 | 
			
		||||
            libnuma-dev \
 | 
			
		||||
            libopenwsman-dev \
 | 
			
		||||
            libparted-dev \
 | 
			
		||||
            libpcap0.8-dev \
 | 
			
		||||
            libpciaccess-dev \
 | 
			
		||||
            librbd-dev \
 | 
			
		||||
            libreadline-dev \
 | 
			
		||||
            libsanlock-dev \
 | 
			
		||||
            libsasl2-dev \
 | 
			
		||||
            libselinux1-dev \
 | 
			
		||||
            libssh-dev \
 | 
			
		||||
            libssh2-1-dev \
 | 
			
		||||
            libtirpc-dev \
 | 
			
		||||
            libudev-dev \
 | 
			
		||||
            libxen-dev \
 | 
			
		||||
            libxml2-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            libyajl-dev \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            systemtap-sdt-dev \
 | 
			
		||||
            wireshark-dev \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,101 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
function install_buildenv() {
 | 
			
		||||
    export DEBIAN_FRONTEND=noninteractive
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get dist-upgrade -y
 | 
			
		||||
    apt-get install --no-install-recommends -y \
 | 
			
		||||
            augeas-lenses \
 | 
			
		||||
            augeas-tools \
 | 
			
		||||
            bash-completion \
 | 
			
		||||
            black \
 | 
			
		||||
            ca-certificates \
 | 
			
		||||
            ccache \
 | 
			
		||||
            clang \
 | 
			
		||||
            codespell \
 | 
			
		||||
            cpp \
 | 
			
		||||
            diffutils \
 | 
			
		||||
            dwarves \
 | 
			
		||||
            ebtables \
 | 
			
		||||
            flake8 \
 | 
			
		||||
            gcc \
 | 
			
		||||
            gettext \
 | 
			
		||||
            git \
 | 
			
		||||
            grep \
 | 
			
		||||
            iproute2 \
 | 
			
		||||
            iptables \
 | 
			
		||||
            kmod \
 | 
			
		||||
            libacl1-dev \
 | 
			
		||||
            libapparmor-dev \
 | 
			
		||||
            libattr1-dev \
 | 
			
		||||
            libaudit-dev \
 | 
			
		||||
            libblkid-dev \
 | 
			
		||||
            libc6-dev \
 | 
			
		||||
            libcap-ng-dev \
 | 
			
		||||
            libclang-rt-dev \
 | 
			
		||||
            libcurl4-gnutls-dev \
 | 
			
		||||
            libdevmapper-dev \
 | 
			
		||||
            libfuse-dev \
 | 
			
		||||
            libglib2.0-dev \
 | 
			
		||||
            libglusterfs-dev \
 | 
			
		||||
            libgnutls28-dev \
 | 
			
		||||
            libiscsi-dev \
 | 
			
		||||
            libnbd-dev \
 | 
			
		||||
            libnl-3-dev \
 | 
			
		||||
            libnl-route-3-dev \
 | 
			
		||||
            libnuma-dev \
 | 
			
		||||
            libopenwsman-dev \
 | 
			
		||||
            libparted-dev \
 | 
			
		||||
            libpcap0.8-dev \
 | 
			
		||||
            libpciaccess-dev \
 | 
			
		||||
            librbd-dev \
 | 
			
		||||
            libreadline-dev \
 | 
			
		||||
            libsanlock-dev \
 | 
			
		||||
            libsasl2-dev \
 | 
			
		||||
            libselinux1-dev \
 | 
			
		||||
            libssh-dev \
 | 
			
		||||
            libssh2-1-dev \
 | 
			
		||||
            libtirpc-dev \
 | 
			
		||||
            libudev-dev \
 | 
			
		||||
            libxen-dev \
 | 
			
		||||
            libxml2-dev \
 | 
			
		||||
            libxml2-utils \
 | 
			
		||||
            libyajl-dev \
 | 
			
		||||
            locales \
 | 
			
		||||
            lvm2 \
 | 
			
		||||
            make \
 | 
			
		||||
            meson \
 | 
			
		||||
            nfs-common \
 | 
			
		||||
            ninja-build \
 | 
			
		||||
            numad \
 | 
			
		||||
            open-iscsi \
 | 
			
		||||
            perl-base \
 | 
			
		||||
            pkgconf \
 | 
			
		||||
            policykit-1 \
 | 
			
		||||
            python3 \
 | 
			
		||||
            python3-docutils \
 | 
			
		||||
            python3-pytest \
 | 
			
		||||
            qemu-utils \
 | 
			
		||||
            sed \
 | 
			
		||||
            systemtap-sdt-dev \
 | 
			
		||||
            wireshark-dev \
 | 
			
		||||
            xsltproc
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
 | 
			
		||||
    dpkg-reconfigure locales
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
 | 
			
		||||
export LANG="en_US.UTF-8"
 | 
			
		||||
export MAKE="/usr/bin/make"
 | 
			
		||||
export NINJA="/usr/bin/ninja"
 | 
			
		||||
export PYTHON="/usr/bin/python3"
 | 
			
		||||
@@ -1,30 +0,0 @@
 | 
			
		||||
@CIRRUS_VM_INSTANCE_TYPE@:
 | 
			
		||||
  @CIRRUS_VM_IMAGE_SELECTOR@: @CIRRUS_VM_IMAGE_NAME@
 | 
			
		||||
 | 
			
		||||
env:
 | 
			
		||||
  CI_REPOSITORY_URL: "@CI_REPOSITORY_URL@"
 | 
			
		||||
  CI_COMMIT_REF_NAME: "@CI_COMMIT_REF_NAME@"
 | 
			
		||||
  CI_MERGE_REQUEST_REF_PATH: "@CI_MERGE_REQUEST_REF_PATH@"
 | 
			
		||||
  CI_COMMIT_SHA: "@CI_COMMIT_SHA@"
 | 
			
		||||
  PATH: "@PATH_EXTRA@:$PATH"
 | 
			
		||||
  PKG_CONFIG_PATH: "@PKG_CONFIG_PATH@"
 | 
			
		||||
  PYTHON: "@PYTHON@"
 | 
			
		||||
  MAKE: "@MAKE@"
 | 
			
		||||
  VIR_TEST_VERBOSE: "1"
 | 
			
		||||
  VIR_TEST_DEBUG: "1"
 | 
			
		||||
 | 
			
		||||
build_task:
 | 
			
		||||
  install_script:
 | 
			
		||||
    - @UPDATE_COMMAND@
 | 
			
		||||
    - @UPGRADE_COMMAND@
 | 
			
		||||
    - @INSTALL_COMMAND@ @PKGS@
 | 
			
		||||
    - if test -n "@PYPI_PKGS@" ; then @PIP3@ install --break-system-packages @PYPI_PKGS@ ; fi
 | 
			
		||||
  clone_script:
 | 
			
		||||
    - git clone --depth 100 "$CI_REPOSITORY_URL" .
 | 
			
		||||
    - git fetch origin "${CI_MERGE_REQUEST_REF_PATH:-$CI_COMMIT_REF_NAME}"
 | 
			
		||||
    - git reset --hard "$CI_COMMIT_SHA"
 | 
			
		||||
  build_script:
 | 
			
		||||
    - if test "$(uname)" = "Darwin"; then meson setup build --optimization 0; else meson setup build; fi
 | 
			
		||||
    - meson dist -C build --no-tests
 | 
			
		||||
    - meson compile -C build
 | 
			
		||||
    - meson test -C build --no-suite syntax-check --print-errorlogs || (cat ~/Library/Logs/DiagnosticReports/*.crash && exit 1)
 | 
			
		||||
@@ -1,16 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
CCACHE='/usr/local/bin/ccache'
 | 
			
		||||
CPAN_PKGS=''
 | 
			
		||||
CROSS_PKGS=''
 | 
			
		||||
MAKE='/usr/local/bin/gmake'
 | 
			
		||||
NINJA='/usr/local/bin/ninja'
 | 
			
		||||
PACKAGING_COMMAND='pkg'
 | 
			
		||||
PIP3='/usr/local/bin/pip-3.8'
 | 
			
		||||
PKGS='augeas bash-completion ca_root_nss ccache codespell cppi curl cyrus-sasl diffutils fusefs-libs gettext git glib gmake gnugrep gnutls gsed libpcap libpciaccess libssh libssh2 libxml2 libxslt meson ninja perl5 pkgconf polkit py311-black py311-docutils py311-flake8 py311-pytest python3 qemu readline yajl'
 | 
			
		||||
PYPI_PKGS=''
 | 
			
		||||
PYTHON='/usr/local/bin/python3'
 | 
			
		||||
@@ -1,16 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
CCACHE='/usr/local/bin/ccache'
 | 
			
		||||
CPAN_PKGS=''
 | 
			
		||||
CROSS_PKGS=''
 | 
			
		||||
MAKE='/usr/local/bin/gmake'
 | 
			
		||||
NINJA='/usr/local/bin/ninja'
 | 
			
		||||
PACKAGING_COMMAND='pkg'
 | 
			
		||||
PIP3='/usr/local/bin/pip-3.8'
 | 
			
		||||
PKGS='augeas bash-completion ca_root_nss ccache codespell cppi curl cyrus-sasl diffutils fusefs-libs gettext git glib gmake gnugrep gnutls gsed libpcap libpciaccess libssh libssh2 libxml2 libxslt meson ninja perl5 pkgconf polkit py311-black py311-docutils py311-flake8 py311-pytest python3 qemu readline yajl'
 | 
			
		||||
PYPI_PKGS=''
 | 
			
		||||
PYTHON='/usr/local/bin/python3'
 | 
			
		||||
@@ -1,16 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
CCACHE='/opt/homebrew/bin/ccache'
 | 
			
		||||
CPAN_PKGS=''
 | 
			
		||||
CROSS_PKGS=''
 | 
			
		||||
MAKE='/opt/homebrew/bin/gmake'
 | 
			
		||||
NINJA='/opt/homebrew/bin/ninja'
 | 
			
		||||
PACKAGING_COMMAND='brew'
 | 
			
		||||
PIP3='/opt/homebrew/bin/pip3'
 | 
			
		||||
PKGS='augeas bash-completion black ccache codespell cppi curl diffutils docutils flake8 gettext git glib gnu-sed gnutls grep libiscsi libpcap libssh libssh2 libxml2 libxslt make meson ninja perl pkg-config python3 qemu readline yajl'
 | 
			
		||||
PYPI_PKGS='pytest'
 | 
			
		||||
PYTHON='/opt/homebrew/bin/python3'
 | 
			
		||||
@@ -1,16 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
CCACHE='/opt/homebrew/bin/ccache'
 | 
			
		||||
CPAN_PKGS=''
 | 
			
		||||
CROSS_PKGS=''
 | 
			
		||||
MAKE='/opt/homebrew/bin/gmake'
 | 
			
		||||
NINJA='/opt/homebrew/bin/ninja'
 | 
			
		||||
PACKAGING_COMMAND='brew'
 | 
			
		||||
PIP3='/opt/homebrew/bin/pip3'
 | 
			
		||||
PKGS='augeas bash-completion black ccache codespell cppi curl diffutils docutils flake8 gettext git glib gnu-sed gnutls grep libiscsi libpcap libssh libssh2 libxml2 libxslt make meson ninja perl pkg-config python3 qemu readline yajl'
 | 
			
		||||
PYPI_PKGS='pytest'
 | 
			
		||||
PYTHON='/opt/homebrew/bin/python3'
 | 
			
		||||
@@ -1,104 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/almalinux:9
 | 
			
		||||
 | 
			
		||||
RUN dnf update -y && \
 | 
			
		||||
    dnf install 'dnf-command(config-manager)' -y && \
 | 
			
		||||
    dnf config-manager --set-enabled -y crb && \
 | 
			
		||||
    dnf install -y epel-release && \
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        audit-libs-devel \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        clang \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cyrus-sasl-devel \
 | 
			
		||||
        device-mapper-devel \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        fuse-devel \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib2-devel \
 | 
			
		||||
        glibc-devel \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        gnutls-devel \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libacl-devel \
 | 
			
		||||
        libattr-devel \
 | 
			
		||||
        libblkid-devel \
 | 
			
		||||
        libcap-ng-devel \
 | 
			
		||||
        libcurl-devel \
 | 
			
		||||
        libiscsi-devel \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libnl3-devel \
 | 
			
		||||
        libpcap-devel \
 | 
			
		||||
        libpciaccess-devel \
 | 
			
		||||
        librbd-devel \
 | 
			
		||||
        libselinux-devel \
 | 
			
		||||
        libssh-devel \
 | 
			
		||||
        libssh2-devel \
 | 
			
		||||
        libtirpc-devel \
 | 
			
		||||
        libwsman-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxml2-devel \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numactl-devel \
 | 
			
		||||
        numad \
 | 
			
		||||
        parted-devel \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        pkgconfig \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pip \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        python3-setuptools \
 | 
			
		||||
        python3-wheel \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-devel \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sanlock-devel \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-devel \
 | 
			
		||||
        systemd-rpm-macros \
 | 
			
		||||
        systemtap-sdt-devel \
 | 
			
		||||
        wireshark-devel \
 | 
			
		||||
        yajl-devel && \
 | 
			
		||||
    dnf autoremove -y && \
 | 
			
		||||
    dnf clean all -y && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
 | 
			
		||||
    rpm -qa | sort > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
 | 
			
		||||
RUN /usr/bin/pip3 install black
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
@@ -1,83 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/alpine:3.19
 | 
			
		||||
 | 
			
		||||
RUN apk update && \
 | 
			
		||||
    apk upgrade && \
 | 
			
		||||
    apk add \
 | 
			
		||||
        acl-dev \
 | 
			
		||||
        attr-dev \
 | 
			
		||||
        audit-dev \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        black \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        ceph-dev \
 | 
			
		||||
        clang \
 | 
			
		||||
        curl-dev \
 | 
			
		||||
        cyrus-sasl-dev \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        eudev-dev \
 | 
			
		||||
        fuse-dev \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib-dev \
 | 
			
		||||
        gnutls-dev \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute2 \
 | 
			
		||||
        iptables \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libcap-ng-dev \
 | 
			
		||||
        libnl3-dev \
 | 
			
		||||
        libpcap-dev \
 | 
			
		||||
        libpciaccess-dev \
 | 
			
		||||
        libselinux-dev \
 | 
			
		||||
        libssh-dev \
 | 
			
		||||
        libssh2-dev \
 | 
			
		||||
        libtirpc-dev \
 | 
			
		||||
        libxml2-dev \
 | 
			
		||||
        libxml2-utils \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        lvm2-dev \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        musl-dev \
 | 
			
		||||
        netcf-dev \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        numactl-dev \
 | 
			
		||||
        open-iscsi \
 | 
			
		||||
        parted-dev \
 | 
			
		||||
        perl \
 | 
			
		||||
        pkgconf \
 | 
			
		||||
        polkit \
 | 
			
		||||
        py3-docutils \
 | 
			
		||||
        py3-flake8 \
 | 
			
		||||
        py3-pytest \
 | 
			
		||||
        python3 \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-dev \
 | 
			
		||||
        samurai \
 | 
			
		||||
        sed \
 | 
			
		||||
        util-linux-dev \
 | 
			
		||||
        wireshark-dev \
 | 
			
		||||
        xen-dev \
 | 
			
		||||
        yajl-dev && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
 | 
			
		||||
    apk list --installed | sort > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
@@ -1,83 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/alpine:edge
 | 
			
		||||
 | 
			
		||||
RUN apk update && \
 | 
			
		||||
    apk upgrade && \
 | 
			
		||||
    apk add \
 | 
			
		||||
        acl-dev \
 | 
			
		||||
        attr-dev \
 | 
			
		||||
        audit-dev \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        black \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        ceph-dev \
 | 
			
		||||
        clang \
 | 
			
		||||
        curl-dev \
 | 
			
		||||
        cyrus-sasl-dev \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        eudev-dev \
 | 
			
		||||
        fuse-dev \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib-dev \
 | 
			
		||||
        gnutls-dev \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute2 \
 | 
			
		||||
        iptables \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libcap-ng-dev \
 | 
			
		||||
        libnl3-dev \
 | 
			
		||||
        libpcap-dev \
 | 
			
		||||
        libpciaccess-dev \
 | 
			
		||||
        libselinux-dev \
 | 
			
		||||
        libssh-dev \
 | 
			
		||||
        libssh2-dev \
 | 
			
		||||
        libtirpc-dev \
 | 
			
		||||
        libxml2-dev \
 | 
			
		||||
        libxml2-utils \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        lvm2-dev \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        musl-dev \
 | 
			
		||||
        netcf-dev \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        numactl-dev \
 | 
			
		||||
        open-iscsi \
 | 
			
		||||
        parted-dev \
 | 
			
		||||
        perl \
 | 
			
		||||
        pkgconf \
 | 
			
		||||
        polkit \
 | 
			
		||||
        py3-docutils \
 | 
			
		||||
        py3-flake8 \
 | 
			
		||||
        py3-pytest \
 | 
			
		||||
        python3 \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-dev \
 | 
			
		||||
        samurai \
 | 
			
		||||
        sed \
 | 
			
		||||
        util-linux-dev \
 | 
			
		||||
        wireshark-dev \
 | 
			
		||||
        xen-dev \
 | 
			
		||||
        yajl-dev && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
 | 
			
		||||
    apk list --installed | sort > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
@@ -1,105 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM quay.io/centos/centos:stream9
 | 
			
		||||
 | 
			
		||||
RUN dnf distro-sync -y && \
 | 
			
		||||
    dnf install 'dnf-command(config-manager)' -y && \
 | 
			
		||||
    dnf config-manager --set-enabled -y crb && \
 | 
			
		||||
    dnf install -y epel-release && \
 | 
			
		||||
    dnf install -y epel-next-release && \
 | 
			
		||||
    dnf install -y \
 | 
			
		||||
        audit-libs-devel \
 | 
			
		||||
        augeas \
 | 
			
		||||
        bash-completion \
 | 
			
		||||
        ca-certificates \
 | 
			
		||||
        ccache \
 | 
			
		||||
        clang \
 | 
			
		||||
        compiler-rt \
 | 
			
		||||
        cpp \
 | 
			
		||||
        cyrus-sasl-devel \
 | 
			
		||||
        device-mapper-devel \
 | 
			
		||||
        diffutils \
 | 
			
		||||
        dwarves \
 | 
			
		||||
        ebtables \
 | 
			
		||||
        firewalld-filesystem \
 | 
			
		||||
        fuse-devel \
 | 
			
		||||
        gcc \
 | 
			
		||||
        gettext \
 | 
			
		||||
        git \
 | 
			
		||||
        glib2-devel \
 | 
			
		||||
        glibc-devel \
 | 
			
		||||
        glibc-langpack-en \
 | 
			
		||||
        gnutls-devel \
 | 
			
		||||
        grep \
 | 
			
		||||
        iproute \
 | 
			
		||||
        iproute-tc \
 | 
			
		||||
        iptables \
 | 
			
		||||
        iscsi-initiator-utils \
 | 
			
		||||
        kmod \
 | 
			
		||||
        libacl-devel \
 | 
			
		||||
        libattr-devel \
 | 
			
		||||
        libblkid-devel \
 | 
			
		||||
        libcap-ng-devel \
 | 
			
		||||
        libcurl-devel \
 | 
			
		||||
        libiscsi-devel \
 | 
			
		||||
        libnbd-devel \
 | 
			
		||||
        libnl3-devel \
 | 
			
		||||
        libpcap-devel \
 | 
			
		||||
        libpciaccess-devel \
 | 
			
		||||
        librbd-devel \
 | 
			
		||||
        libselinux-devel \
 | 
			
		||||
        libssh-devel \
 | 
			
		||||
        libssh2-devel \
 | 
			
		||||
        libtirpc-devel \
 | 
			
		||||
        libwsman-devel \
 | 
			
		||||
        libxml2 \
 | 
			
		||||
        libxml2-devel \
 | 
			
		||||
        libxslt \
 | 
			
		||||
        lvm2 \
 | 
			
		||||
        make \
 | 
			
		||||
        meson \
 | 
			
		||||
        nfs-utils \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        numactl-devel \
 | 
			
		||||
        numad \
 | 
			
		||||
        parted-devel \
 | 
			
		||||
        perl-base \
 | 
			
		||||
        pkgconfig \
 | 
			
		||||
        polkit \
 | 
			
		||||
        python3 \
 | 
			
		||||
        python3-docutils \
 | 
			
		||||
        python3-flake8 \
 | 
			
		||||
        python3-pip \
 | 
			
		||||
        python3-pytest \
 | 
			
		||||
        python3-setuptools \
 | 
			
		||||
        python3-wheel \
 | 
			
		||||
        qemu-img \
 | 
			
		||||
        readline-devel \
 | 
			
		||||
        rpm-build \
 | 
			
		||||
        sanlock-devel \
 | 
			
		||||
        sed \
 | 
			
		||||
        systemd-devel \
 | 
			
		||||
        systemd-rpm-macros \
 | 
			
		||||
        systemtap-sdt-devel \
 | 
			
		||||
        wireshark-devel \
 | 
			
		||||
        yajl-devel && \
 | 
			
		||||
    dnf autoremove -y && \
 | 
			
		||||
    dnf clean all -y && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
 | 
			
		||||
    rpm -qa | sort > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
 | 
			
		||||
RUN /usr/bin/pip3 install black
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
@@ -1,123 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    dpkg --add-architecture arm64 && \
 | 
			
		||||
    eatmydata apt-get update && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      gcc-aarch64-linux-gnu \
 | 
			
		||||
                      libacl1-dev:arm64 \
 | 
			
		||||
                      libapparmor-dev:arm64 \
 | 
			
		||||
                      libattr1-dev:arm64 \
 | 
			
		||||
                      libaudit-dev:arm64 \
 | 
			
		||||
                      libblkid-dev:arm64 \
 | 
			
		||||
                      libc6-dev:arm64 \
 | 
			
		||||
                      libcap-ng-dev:arm64 \
 | 
			
		||||
                      libcurl4-gnutls-dev:arm64 \
 | 
			
		||||
                      libdevmapper-dev:arm64 \
 | 
			
		||||
                      libfuse-dev:arm64 \
 | 
			
		||||
                      libglib2.0-dev:arm64 \
 | 
			
		||||
                      libglusterfs-dev:arm64 \
 | 
			
		||||
                      libgnutls28-dev:arm64 \
 | 
			
		||||
                      libiscsi-dev:arm64 \
 | 
			
		||||
                      libnl-3-dev:arm64 \
 | 
			
		||||
                      libnl-route-3-dev:arm64 \
 | 
			
		||||
                      libnuma-dev:arm64 \
 | 
			
		||||
                      libparted-dev:arm64 \
 | 
			
		||||
                      libpcap0.8-dev:arm64 \
 | 
			
		||||
                      libpciaccess-dev:arm64 \
 | 
			
		||||
                      librbd-dev:arm64 \
 | 
			
		||||
                      libreadline-dev:arm64 \
 | 
			
		||||
                      libsanlock-dev:arm64 \
 | 
			
		||||
                      libsasl2-dev:arm64 \
 | 
			
		||||
                      libselinux1-dev:arm64 \
 | 
			
		||||
                      libssh-gcrypt-dev:arm64 \
 | 
			
		||||
                      libssh2-1-dev:arm64 \
 | 
			
		||||
                      libtirpc-dev:arm64 \
 | 
			
		||||
                      libudev-dev:arm64 \
 | 
			
		||||
                      libxen-dev:arm64 \
 | 
			
		||||
                      libxml2-dev:arm64 \
 | 
			
		||||
                      libyajl-dev:arm64 \
 | 
			
		||||
                      systemtap-sdt-dev:arm64 && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross && \
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'aarch64'\n\
 | 
			
		||||
cpu = 'aarch64'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-gcc
 | 
			
		||||
 | 
			
		||||
ENV ABI "aarch64-linux-gnu"
 | 
			
		||||
ENV MESON_OPTS "--cross-file=aarch64-linux-gnu"
 | 
			
		||||
@@ -1,122 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    dpkg --add-architecture armel && \
 | 
			
		||||
    eatmydata apt-get update && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      gcc-arm-linux-gnueabi \
 | 
			
		||||
                      libacl1-dev:armel \
 | 
			
		||||
                      libapparmor-dev:armel \
 | 
			
		||||
                      libattr1-dev:armel \
 | 
			
		||||
                      libaudit-dev:armel \
 | 
			
		||||
                      libblkid-dev:armel \
 | 
			
		||||
                      libc6-dev:armel \
 | 
			
		||||
                      libcap-ng-dev:armel \
 | 
			
		||||
                      libcurl4-gnutls-dev:armel \
 | 
			
		||||
                      libdevmapper-dev:armel \
 | 
			
		||||
                      libfuse-dev:armel \
 | 
			
		||||
                      libglib2.0-dev:armel \
 | 
			
		||||
                      libglusterfs-dev:armel \
 | 
			
		||||
                      libgnutls28-dev:armel \
 | 
			
		||||
                      libiscsi-dev:armel \
 | 
			
		||||
                      libnl-3-dev:armel \
 | 
			
		||||
                      libnl-route-3-dev:armel \
 | 
			
		||||
                      libnuma-dev:armel \
 | 
			
		||||
                      libparted-dev:armel \
 | 
			
		||||
                      libpcap0.8-dev:armel \
 | 
			
		||||
                      libpciaccess-dev:armel \
 | 
			
		||||
                      librbd-dev:armel \
 | 
			
		||||
                      libreadline-dev:armel \
 | 
			
		||||
                      libsanlock-dev:armel \
 | 
			
		||||
                      libsasl2-dev:armel \
 | 
			
		||||
                      libselinux1-dev:armel \
 | 
			
		||||
                      libssh-gcrypt-dev:armel \
 | 
			
		||||
                      libssh2-1-dev:armel \
 | 
			
		||||
                      libtirpc-dev:armel \
 | 
			
		||||
                      libudev-dev:armel \
 | 
			
		||||
                      libxml2-dev:armel \
 | 
			
		||||
                      libyajl-dev:armel \
 | 
			
		||||
                      systemtap-sdt-dev:armel && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross && \
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'arm'\n\
 | 
			
		||||
cpu = 'arm'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-gcc
 | 
			
		||||
 | 
			
		||||
ENV ABI "arm-linux-gnueabi"
 | 
			
		||||
ENV MESON_OPTS "--cross-file=arm-linux-gnueabi"
 | 
			
		||||
@@ -1,123 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    dpkg --add-architecture armhf && \
 | 
			
		||||
    eatmydata apt-get update && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      gcc-arm-linux-gnueabihf \
 | 
			
		||||
                      libacl1-dev:armhf \
 | 
			
		||||
                      libapparmor-dev:armhf \
 | 
			
		||||
                      libattr1-dev:armhf \
 | 
			
		||||
                      libaudit-dev:armhf \
 | 
			
		||||
                      libblkid-dev:armhf \
 | 
			
		||||
                      libc6-dev:armhf \
 | 
			
		||||
                      libcap-ng-dev:armhf \
 | 
			
		||||
                      libcurl4-gnutls-dev:armhf \
 | 
			
		||||
                      libdevmapper-dev:armhf \
 | 
			
		||||
                      libfuse-dev:armhf \
 | 
			
		||||
                      libglib2.0-dev:armhf \
 | 
			
		||||
                      libglusterfs-dev:armhf \
 | 
			
		||||
                      libgnutls28-dev:armhf \
 | 
			
		||||
                      libiscsi-dev:armhf \
 | 
			
		||||
                      libnl-3-dev:armhf \
 | 
			
		||||
                      libnl-route-3-dev:armhf \
 | 
			
		||||
                      libnuma-dev:armhf \
 | 
			
		||||
                      libparted-dev:armhf \
 | 
			
		||||
                      libpcap0.8-dev:armhf \
 | 
			
		||||
                      libpciaccess-dev:armhf \
 | 
			
		||||
                      librbd-dev:armhf \
 | 
			
		||||
                      libreadline-dev:armhf \
 | 
			
		||||
                      libsanlock-dev:armhf \
 | 
			
		||||
                      libsasl2-dev:armhf \
 | 
			
		||||
                      libselinux1-dev:armhf \
 | 
			
		||||
                      libssh-gcrypt-dev:armhf \
 | 
			
		||||
                      libssh2-1-dev:armhf \
 | 
			
		||||
                      libtirpc-dev:armhf \
 | 
			
		||||
                      libudev-dev:armhf \
 | 
			
		||||
                      libxen-dev:armhf \
 | 
			
		||||
                      libxml2-dev:armhf \
 | 
			
		||||
                      libyajl-dev:armhf \
 | 
			
		||||
                      systemtap-sdt-dev:armhf && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross && \
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'arm'\n\
 | 
			
		||||
cpu = 'armhf'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-gcc
 | 
			
		||||
 | 
			
		||||
ENV ABI "arm-linux-gnueabihf"
 | 
			
		||||
ENV MESON_OPTS "--cross-file=arm-linux-gnueabihf"
 | 
			
		||||
@@ -1,122 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    dpkg --add-architecture i386 && \
 | 
			
		||||
    eatmydata apt-get update && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      gcc-i686-linux-gnu \
 | 
			
		||||
                      libacl1-dev:i386 \
 | 
			
		||||
                      libapparmor-dev:i386 \
 | 
			
		||||
                      libattr1-dev:i386 \
 | 
			
		||||
                      libaudit-dev:i386 \
 | 
			
		||||
                      libblkid-dev:i386 \
 | 
			
		||||
                      libc6-dev:i386 \
 | 
			
		||||
                      libcap-ng-dev:i386 \
 | 
			
		||||
                      libcurl4-gnutls-dev:i386 \
 | 
			
		||||
                      libdevmapper-dev:i386 \
 | 
			
		||||
                      libfuse-dev:i386 \
 | 
			
		||||
                      libglib2.0-dev:i386 \
 | 
			
		||||
                      libglusterfs-dev:i386 \
 | 
			
		||||
                      libgnutls28-dev:i386 \
 | 
			
		||||
                      libiscsi-dev:i386 \
 | 
			
		||||
                      libnl-3-dev:i386 \
 | 
			
		||||
                      libnl-route-3-dev:i386 \
 | 
			
		||||
                      libnuma-dev:i386 \
 | 
			
		||||
                      libparted-dev:i386 \
 | 
			
		||||
                      libpcap0.8-dev:i386 \
 | 
			
		||||
                      libpciaccess-dev:i386 \
 | 
			
		||||
                      librbd-dev:i386 \
 | 
			
		||||
                      libreadline-dev:i386 \
 | 
			
		||||
                      libsanlock-dev:i386 \
 | 
			
		||||
                      libsasl2-dev:i386 \
 | 
			
		||||
                      libselinux1-dev:i386 \
 | 
			
		||||
                      libssh-gcrypt-dev:i386 \
 | 
			
		||||
                      libssh2-1-dev:i386 \
 | 
			
		||||
                      libtirpc-dev:i386 \
 | 
			
		||||
                      libudev-dev:i386 \
 | 
			
		||||
                      libxml2-dev:i386 \
 | 
			
		||||
                      libyajl-dev:i386 \
 | 
			
		||||
                      systemtap-sdt-dev:i386 && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross && \
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/i686-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/i686-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'x86'\n\
 | 
			
		||||
cpu = 'i686'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-gcc
 | 
			
		||||
 | 
			
		||||
ENV ABI "i686-linux-gnu"
 | 
			
		||||
ENV MESON_OPTS "--cross-file=i686-linux-gnu"
 | 
			
		||||
@@ -1,122 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    dpkg --add-architecture mips64el && \
 | 
			
		||||
    eatmydata apt-get update && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      gcc-mips64el-linux-gnuabi64 \
 | 
			
		||||
                      libacl1-dev:mips64el \
 | 
			
		||||
                      libapparmor-dev:mips64el \
 | 
			
		||||
                      libattr1-dev:mips64el \
 | 
			
		||||
                      libaudit-dev:mips64el \
 | 
			
		||||
                      libblkid-dev:mips64el \
 | 
			
		||||
                      libc6-dev:mips64el \
 | 
			
		||||
                      libcap-ng-dev:mips64el \
 | 
			
		||||
                      libcurl4-gnutls-dev:mips64el \
 | 
			
		||||
                      libdevmapper-dev:mips64el \
 | 
			
		||||
                      libfuse-dev:mips64el \
 | 
			
		||||
                      libglib2.0-dev:mips64el \
 | 
			
		||||
                      libglusterfs-dev:mips64el \
 | 
			
		||||
                      libgnutls28-dev:mips64el \
 | 
			
		||||
                      libiscsi-dev:mips64el \
 | 
			
		||||
                      libnl-3-dev:mips64el \
 | 
			
		||||
                      libnl-route-3-dev:mips64el \
 | 
			
		||||
                      libnuma-dev:mips64el \
 | 
			
		||||
                      libparted-dev:mips64el \
 | 
			
		||||
                      libpcap0.8-dev:mips64el \
 | 
			
		||||
                      libpciaccess-dev:mips64el \
 | 
			
		||||
                      librbd-dev:mips64el \
 | 
			
		||||
                      libreadline-dev:mips64el \
 | 
			
		||||
                      libsanlock-dev:mips64el \
 | 
			
		||||
                      libsasl2-dev:mips64el \
 | 
			
		||||
                      libselinux1-dev:mips64el \
 | 
			
		||||
                      libssh-gcrypt-dev:mips64el \
 | 
			
		||||
                      libssh2-1-dev:mips64el \
 | 
			
		||||
                      libtirpc-dev:mips64el \
 | 
			
		||||
                      libudev-dev:mips64el \
 | 
			
		||||
                      libxml2-dev:mips64el \
 | 
			
		||||
                      libyajl-dev:mips64el \
 | 
			
		||||
                      systemtap-sdt-dev:mips64el && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross && \
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'mips64'\n\
 | 
			
		||||
cpu = 'mips64el'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64 && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-gcc
 | 
			
		||||
 | 
			
		||||
ENV ABI "mips64el-linux-gnuabi64"
 | 
			
		||||
ENV MESON_OPTS "--cross-file=mips64el-linux-gnuabi64"
 | 
			
		||||
@@ -1,122 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    dpkg --add-architecture mipsel && \
 | 
			
		||||
    eatmydata apt-get update && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      gcc-mipsel-linux-gnu \
 | 
			
		||||
                      libacl1-dev:mipsel \
 | 
			
		||||
                      libapparmor-dev:mipsel \
 | 
			
		||||
                      libattr1-dev:mipsel \
 | 
			
		||||
                      libaudit-dev:mipsel \
 | 
			
		||||
                      libblkid-dev:mipsel \
 | 
			
		||||
                      libc6-dev:mipsel \
 | 
			
		||||
                      libcap-ng-dev:mipsel \
 | 
			
		||||
                      libcurl4-gnutls-dev:mipsel \
 | 
			
		||||
                      libdevmapper-dev:mipsel \
 | 
			
		||||
                      libfuse-dev:mipsel \
 | 
			
		||||
                      libglib2.0-dev:mipsel \
 | 
			
		||||
                      libglusterfs-dev:mipsel \
 | 
			
		||||
                      libgnutls28-dev:mipsel \
 | 
			
		||||
                      libiscsi-dev:mipsel \
 | 
			
		||||
                      libnl-3-dev:mipsel \
 | 
			
		||||
                      libnl-route-3-dev:mipsel \
 | 
			
		||||
                      libnuma-dev:mipsel \
 | 
			
		||||
                      libparted-dev:mipsel \
 | 
			
		||||
                      libpcap0.8-dev:mipsel \
 | 
			
		||||
                      libpciaccess-dev:mipsel \
 | 
			
		||||
                      librbd-dev:mipsel \
 | 
			
		||||
                      libreadline-dev:mipsel \
 | 
			
		||||
                      libsanlock-dev:mipsel \
 | 
			
		||||
                      libsasl2-dev:mipsel \
 | 
			
		||||
                      libselinux1-dev:mipsel \
 | 
			
		||||
                      libssh-gcrypt-dev:mipsel \
 | 
			
		||||
                      libssh2-1-dev:mipsel \
 | 
			
		||||
                      libtirpc-dev:mipsel \
 | 
			
		||||
                      libudev-dev:mipsel \
 | 
			
		||||
                      libxml2-dev:mipsel \
 | 
			
		||||
                      libyajl-dev:mipsel \
 | 
			
		||||
                      systemtap-sdt-dev:mipsel && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross && \
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'mips'\n\
 | 
			
		||||
cpu = 'mipsel'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-gcc
 | 
			
		||||
 | 
			
		||||
ENV ABI "mipsel-linux-gnu"
 | 
			
		||||
ENV MESON_OPTS "--cross-file=mipsel-linux-gnu"
 | 
			
		||||
@@ -1,122 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    dpkg --add-architecture ppc64el && \
 | 
			
		||||
    eatmydata apt-get update && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      gcc-powerpc64le-linux-gnu \
 | 
			
		||||
                      libacl1-dev:ppc64el \
 | 
			
		||||
                      libapparmor-dev:ppc64el \
 | 
			
		||||
                      libattr1-dev:ppc64el \
 | 
			
		||||
                      libaudit-dev:ppc64el \
 | 
			
		||||
                      libblkid-dev:ppc64el \
 | 
			
		||||
                      libc6-dev:ppc64el \
 | 
			
		||||
                      libcap-ng-dev:ppc64el \
 | 
			
		||||
                      libcurl4-gnutls-dev:ppc64el \
 | 
			
		||||
                      libdevmapper-dev:ppc64el \
 | 
			
		||||
                      libfuse-dev:ppc64el \
 | 
			
		||||
                      libglib2.0-dev:ppc64el \
 | 
			
		||||
                      libglusterfs-dev:ppc64el \
 | 
			
		||||
                      libgnutls28-dev:ppc64el \
 | 
			
		||||
                      libiscsi-dev:ppc64el \
 | 
			
		||||
                      libnl-3-dev:ppc64el \
 | 
			
		||||
                      libnl-route-3-dev:ppc64el \
 | 
			
		||||
                      libnuma-dev:ppc64el \
 | 
			
		||||
                      libparted-dev:ppc64el \
 | 
			
		||||
                      libpcap0.8-dev:ppc64el \
 | 
			
		||||
                      libpciaccess-dev:ppc64el \
 | 
			
		||||
                      librbd-dev:ppc64el \
 | 
			
		||||
                      libreadline-dev:ppc64el \
 | 
			
		||||
                      libsanlock-dev:ppc64el \
 | 
			
		||||
                      libsasl2-dev:ppc64el \
 | 
			
		||||
                      libselinux1-dev:ppc64el \
 | 
			
		||||
                      libssh-gcrypt-dev:ppc64el \
 | 
			
		||||
                      libssh2-1-dev:ppc64el \
 | 
			
		||||
                      libtirpc-dev:ppc64el \
 | 
			
		||||
                      libudev-dev:ppc64el \
 | 
			
		||||
                      libxml2-dev:ppc64el \
 | 
			
		||||
                      libyajl-dev:ppc64el \
 | 
			
		||||
                      systemtap-sdt-dev:ppc64el && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross && \
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 'ppc64'\n\
 | 
			
		||||
cpu = 'powerpc64le'\n\
 | 
			
		||||
endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-gcc
 | 
			
		||||
 | 
			
		||||
ENV ABI "powerpc64le-linux-gnu"
 | 
			
		||||
ENV MESON_OPTS "--cross-file=powerpc64le-linux-gnu"
 | 
			
		||||
@@ -1,122 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    dpkg --add-architecture s390x && \
 | 
			
		||||
    eatmydata apt-get update && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      gcc-s390x-linux-gnu \
 | 
			
		||||
                      libacl1-dev:s390x \
 | 
			
		||||
                      libapparmor-dev:s390x \
 | 
			
		||||
                      libattr1-dev:s390x \
 | 
			
		||||
                      libaudit-dev:s390x \
 | 
			
		||||
                      libblkid-dev:s390x \
 | 
			
		||||
                      libc6-dev:s390x \
 | 
			
		||||
                      libcap-ng-dev:s390x \
 | 
			
		||||
                      libcurl4-gnutls-dev:s390x \
 | 
			
		||||
                      libdevmapper-dev:s390x \
 | 
			
		||||
                      libfuse-dev:s390x \
 | 
			
		||||
                      libglib2.0-dev:s390x \
 | 
			
		||||
                      libglusterfs-dev:s390x \
 | 
			
		||||
                      libgnutls28-dev:s390x \
 | 
			
		||||
                      libiscsi-dev:s390x \
 | 
			
		||||
                      libnl-3-dev:s390x \
 | 
			
		||||
                      libnl-route-3-dev:s390x \
 | 
			
		||||
                      libnuma-dev:s390x \
 | 
			
		||||
                      libparted-dev:s390x \
 | 
			
		||||
                      libpcap0.8-dev:s390x \
 | 
			
		||||
                      libpciaccess-dev:s390x \
 | 
			
		||||
                      librbd-dev:s390x \
 | 
			
		||||
                      libreadline-dev:s390x \
 | 
			
		||||
                      libsanlock-dev:s390x \
 | 
			
		||||
                      libsasl2-dev:s390x \
 | 
			
		||||
                      libselinux1-dev:s390x \
 | 
			
		||||
                      libssh-gcrypt-dev:s390x \
 | 
			
		||||
                      libssh2-1-dev:s390x \
 | 
			
		||||
                      libtirpc-dev:s390x \
 | 
			
		||||
                      libudev-dev:s390x \
 | 
			
		||||
                      libxml2-dev:s390x \
 | 
			
		||||
                      libyajl-dev:s390x \
 | 
			
		||||
                      systemtap-sdt-dev:s390x && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    mkdir -p /usr/local/share/meson/cross && \
 | 
			
		||||
    printf "[binaries]\n\
 | 
			
		||||
c = '/usr/bin/s390x-linux-gnu-gcc'\n\
 | 
			
		||||
ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
 | 
			
		||||
strip = '/usr/bin/s390x-linux-gnu-strip'\n\
 | 
			
		||||
pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
 | 
			
		||||
\n\
 | 
			
		||||
[host_machine]\n\
 | 
			
		||||
system = 'linux'\n\
 | 
			
		||||
cpu_family = 's390x'\n\
 | 
			
		||||
cpu = 's390x'\n\
 | 
			
		||||
endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-gcc
 | 
			
		||||
 | 
			
		||||
ENV ABI "s390x-linux-gnu"
 | 
			
		||||
ENV MESON_OPTS "--cross-file=s390x-linux-gnu"
 | 
			
		||||
@@ -1,103 +0,0 @@
 | 
			
		||||
# THIS FILE WAS AUTO-GENERATED
 | 
			
		||||
#
 | 
			
		||||
#  $ lcitool manifest ci/manifest.yml
 | 
			
		||||
#
 | 
			
		||||
# https://gitlab.com/libvirt/libvirt-ci
 | 
			
		||||
 | 
			
		||||
FROM docker.io/library/debian:11-slim
 | 
			
		||||
 | 
			
		||||
RUN export DEBIAN_FRONTEND=noninteractive && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -y eatmydata && \
 | 
			
		||||
    eatmydata apt-get dist-upgrade -y && \
 | 
			
		||||
    eatmydata apt-get install --no-install-recommends -y \
 | 
			
		||||
                      augeas-lenses \
 | 
			
		||||
                      augeas-tools \
 | 
			
		||||
                      bash-completion \
 | 
			
		||||
                      black \
 | 
			
		||||
                      ca-certificates \
 | 
			
		||||
                      ccache \
 | 
			
		||||
                      clang \
 | 
			
		||||
                      codespell \
 | 
			
		||||
                      cpp \
 | 
			
		||||
                      diffutils \
 | 
			
		||||
                      dwarves \
 | 
			
		||||
                      ebtables \
 | 
			
		||||
                      flake8 \
 | 
			
		||||
                      gcc \
 | 
			
		||||
                      gettext \
 | 
			
		||||
                      git \
 | 
			
		||||
                      grep \
 | 
			
		||||
                      iproute2 \
 | 
			
		||||
                      iptables \
 | 
			
		||||
                      kmod \
 | 
			
		||||
                      libacl1-dev \
 | 
			
		||||
                      libapparmor-dev \
 | 
			
		||||
                      libattr1-dev \
 | 
			
		||||
                      libaudit-dev \
 | 
			
		||||
                      libblkid-dev \
 | 
			
		||||
                      libc6-dev \
 | 
			
		||||
                      libcap-ng-dev \
 | 
			
		||||
                      libclang-dev \
 | 
			
		||||
                      libcurl4-gnutls-dev \
 | 
			
		||||
                      libdevmapper-dev \
 | 
			
		||||
                      libfuse-dev \
 | 
			
		||||
                      libglib2.0-dev \
 | 
			
		||||
                      libglusterfs-dev \
 | 
			
		||||
                      libgnutls28-dev \
 | 
			
		||||
                      libiscsi-dev \
 | 
			
		||||
                      libnetcf-dev \
 | 
			
		||||
                      libnl-3-dev \
 | 
			
		||||
                      libnl-route-3-dev \
 | 
			
		||||
                      libnuma-dev \
 | 
			
		||||
                      libparted-dev \
 | 
			
		||||
                      libpcap0.8-dev \
 | 
			
		||||
                      libpciaccess-dev \
 | 
			
		||||
                      librbd-dev \
 | 
			
		||||
                      libreadline-dev \
 | 
			
		||||
                      libsanlock-dev \
 | 
			
		||||
                      libsasl2-dev \
 | 
			
		||||
                      libselinux1-dev \
 | 
			
		||||
                      libssh-gcrypt-dev \
 | 
			
		||||
                      libssh2-1-dev \
 | 
			
		||||
                      libtirpc-dev \
 | 
			
		||||
                      libudev-dev \
 | 
			
		||||
                      libxen-dev \
 | 
			
		||||
                      libxml2-dev \
 | 
			
		||||
                      libxml2-utils \
 | 
			
		||||
                      libyajl-dev \
 | 
			
		||||
                      locales \
 | 
			
		||||
                      lvm2 \
 | 
			
		||||
                      make \
 | 
			
		||||
                      meson \
 | 
			
		||||
                      nfs-common \
 | 
			
		||||
                      ninja-build \
 | 
			
		||||
                      numad \
 | 
			
		||||
                      open-iscsi \
 | 
			
		||||
                      perl-base \
 | 
			
		||||
                      pkgconf \
 | 
			
		||||
                      policykit-1 \
 | 
			
		||||
                      python3 \
 | 
			
		||||
                      python3-docutils \
 | 
			
		||||
                      python3-pytest \
 | 
			
		||||
                      qemu-utils \
 | 
			
		||||
                      sed \
 | 
			
		||||
                      systemtap-sdt-dev \
 | 
			
		||||
                      wireshark-dev \
 | 
			
		||||
                      xsltproc && \
 | 
			
		||||
    eatmydata apt-get autoremove -y && \
 | 
			
		||||
    eatmydata apt-get autoclean -y && \
 | 
			
		||||
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
 | 
			
		||||
    dpkg-reconfigure locales && \
 | 
			
		||||
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
 | 
			
		||||
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
 | 
			
		||||
    mkdir -p /usr/libexec/ccache-wrappers && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
 | 
			
		||||
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | 
			
		||||
 | 
			
		||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | 
			
		||||
ENV LANG "en_US.UTF-8"
 | 
			
		||||
ENV MAKE "/usr/bin/make"
 | 
			
		||||
ENV NINJA "/usr/bin/ninja"
 | 
			
		||||
ENV PYTHON "/usr/bin/python3"
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user