summaryrefslogtreecommitdiffstats
path: root/appliance/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* appliance: Add 99-guestfs-serial.rules to EXTRA_DIST.1.19.49Richard W.M. Jones2012-10-091-0/+1
| | | | This fixes commit 7786d56db8c22413949f98ef6b15fe0ea367d195.
* launch: Add add_drive 'label' option.Richard W.M. Jones2012-10-081-1/+21
| | | | | | | | | | | | | | | | | | | | | New API: list-disk-labels Allow the user to pass an optional disk label when adding a drive. This is passed through to qemu / libvirt using the disk serial field, and from there to the appliance which exposes it through udev, creating a special alias of the device /dev/disk/guestfs/<label>. Partitions are named /dev/disk/guestfs/<label><partnum>. virtio-blk and virtio-scsi limit the serial field to 20 bytes. We further limit the name to maximum 20 ASCII characters in [a-zA-Z]. list-devices and list-partitions are not changed: these calls still return raw block device names. However a new call, list-disk-labels, returns a hash table allowing callers to map between disk labels, and block device and partition names. This commit also includes a test.
* build: Use 'tmp-d' as name of temporary directory instead of 'tmp'.Richard W.M. Jones2012-10-061-6/+6
| | | | | | | When building supermin.d/daemon.img, use 'tmp-d' instead of 'tmp' as the name of the temporary directory. This is just code motion.
* podwrapper: Add --license parameter, which is required.Richard W.M. Jones2012-08-211-0/+1
| | | | | | | | | | This adds standard LICENSE and BUGS sections to all of the man pages that are processed by podwrapper. Modify all the calls to $(PODWRAPPER) to add the right --license parameter according to the content. Note that this relaxes the license on some code example pages, making them effectively BSD-style licensed.
* build: Change how make.sh, packagelist, excludelist are updated.Richard W.M. Jones2012-07-181-6/+9
| | | | | | Add proper dependencies for these files, but also use 'cmp' to ensure they only get overwritten if the new files have actually changed, so we don't rebuild the appliance unnecessarily.
* build: Change calls to podwrapper.sh to use $(PODWRAPPER).Richard W.M. Jones2012-07-161-1/+1
| | | | | This will allow us to easily change the location of this script in future.
* build: Define builddir and abs_srcdir when they are missing.Richard W.M. Jones2012-06-181-0/+3
| | | | | | | | | | | | | | | | | | | | | RHEL 5-era autoconf did not define these, so define them manually when they are missing. Define builddir as '.' The scripts require this. It won't work in the srcdir != builddir case, but we don't care about that for RHEL 5. This commit also moves the builddir / abs_srcdir variable setting above the include of subdir-rules.mk, in case that include uses these variables. Useful script: for f in $(find -name Makefile.am | xargs fgrep '$(abs_srcdir)' -l) ; do if ! grep -q '^abs_srcdir' $f; then echo missing in $f fi done
* Fix out-of-tree build for applianceHilko Bengen2012-03-281-1/+1
|
* appliance: Add a tool to make fixed appliances.Richard W.M. Jones2012-03-171-1/+20
|
* Add guestfsd.suppressions file to EXTRA_DIST.1.17.17Richard W.M. Jones2012-03-141-2/+3
|
* appliance: Enhance --enable-valgrind-daemon with a suppressions file.Richard W.M. Jones2012-03-141-2/+3
| | | | This lets us suppress errors in system libraries.
* build: Choose a virtual directory for the daemon which is not a symlink.Richard W.M. Jones2012-02-061-4/+5
| | | | | | | Check /sbin, /usr/sbin, /bin and /usr/bin to ensure that neither the directory nor the parent (eg. /usr) is a symlink, and use this directory for the virtual directory used to store guestfsd in the appliance.
* Enable running the daemon under valgrind.Richard W.M. Jones2012-01-241-2/+7
| | | | | | | | | | | | | | | | | This commit allows you to run the daemon under valgrind. You have to enable it at configure time: ./configure --enable-valgrind-daemon This should *not* be done for production builds. When this feature is enabled, valgrind is added to the appliance and the daemon is run under valgrind. Log messages from valgrind are passed back over a virtio-serial channel into a file called 'valgrind.log.$PID' in the top build directory. Running 'make check', 'make extra-tests' etc causes many valgrind.log.* files to be created which must be examined by hand.
* Update FSF address.Matthew Booth2011-11-081-1/+1
|
* out-of-tree build: fix applianceHilko Bengen2011-08-151-0/+1
|
* appliance: Don't hard-code febootstrap --exclude parameters.Richard W.M. Jones2010-12-191-2/+8
| | | | | Create a separate file 'excludelist.in' that contains these regular expressions, and process it the same way as packagelist.in.
* appliance: Use a temporary file when processing packagelist.in.Richard W.M. Jones2010-12-191-1/+2
|
* appliance: Change to using febootstrap 3.x supermin appliance.Richard W.M. Jones2010-12-051-75/+13
| | | | | | | | | This removes all support for building the ordinary / old style appliance using febootstrap 2.x, debootstrap, debirf, fakeroot and fakechroot. Instead this uses febootstrap 3.x to build the supermin appliance in a simpler cross-distro manner.
* appliance: Put /init in a separate supermin appliance component.Richard W.M. Jones2010-12-041-0/+9
|
* appliance: Remove repo from appliance filename (RHBZ#638901).Richard W.M. Jones2010-10-271-2/+2
| | | | | | | There's no need to have the appliance filename contain the repository name it was built from, and this change gives downstream users more freedom to mix and match libraries and appliances if they want to.
* Fix appliance build dependency problemMatthew Booth2010-09-211-1/+1
| | | | | | | | | | The appliance was being completely rebuilt every time guestfsd was updated. This was because make.sh depended on guestfsd, which it had to do because it called update.sh to install guestfsd. This fix removes the call to update.sh in make.sh, and therefore the dependency on guestfsd. The Makefile already includes a rule to run update.sh when guestfsd is updated, so this was unnecessary.
* appliance: Remove some obsolete testing rules from Makefile.amRichard Jones2010-08-211-31/+0
| | | | This haven't been used -- and haven't worked -- for a long time.
* Make the supermin appliance include local augeas lensesMatthew Booth2010-05-271-0/+3
|
* build: Remove install_kernel from EXTRA_DIST.Richard Jones2010-05-241-1/+0
| | | | | This updates commit a34fadf900625f1f7359ecf3ca760820ffa20815, removing this now non-existent script from EXTRA_DIST.
* Ubuntu: Revert install-kernel to debirf default script.Richard Jones2010-05-201-0/+1
|
* Ensure ordinary appliance is updated before trying to build supermin appliance.Richard Jones2010-05-141-2/+2
|
* Unify supermin appliance building using febootstrap 2.7Richard Jones2010-05-131-32/+22
|
* Rewrite libguestfs-supermin-helper in C.Richard Jones2010-03-121-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libguestfs-supermin-helper was previously a shell script. Although we had steadily optimized it, there were a number of intractable hot spots: (1) cpio still reads input files in 512 byte chunks; this is *very* pessimal behaviour, particularly when SELinux is enabled. (2) the hostfiles globbing was done very inefficiently by the shell, with the shell rereading the same directory over and over again. This is a rewrite of this shell script in C. It is approximately 3 times faster without SELinux, and has an even greater speed difference with SELinux. The main features are: (a) It never frees memory, making it simpler. The program is designed to run and exit in sub-second times, so this is acceptable. (b) It caches directory reads, making the globbing of host files much faster (measured this as ~ 4 x speed up). (c) It doesn't use external cpio, but instead contains code to write newc format cpio files, which is all that the kernel can read. Unlike cpio, this code uses large buffers for reads and writes. (d) Ignores missing or unreadable hostfiles, whereas cpio gave a warning. (e) Checks all return values from system calls. (f) With --verbose flag, it will print messages timing itself. This passes all tests. Updated with feedback from Jim Meyering.
* build: Ensure building appliance depends on guestfsdMatthew Booth2009-11-211-1/+1
| | | | | | | Previously, only the update.sh rule checked the daemon had been built. update.sh is called directly from within make.sh, so in that path the dependency was never checked. This adds the daemon dependency explicitly to the rebuild-from-scratch path.
* build: Fix inter-directory dependenciesMatthew Booth2009-11-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds an explicit dependency on generator.ml for every file it generates, except java files. Java is left for another time because it's considerably trickier. It also adds a build rule for src/libguestfs.la so it can be rebuilt as required from other directories. It does this by creating a top level make file, subdir-rules.mk, which can be included from sub-directories. sub-directories need to define 'generator_built' to include local files which are built by generator.ml, and they will be updated automatically. This fixes parallel make, and will automatically re-create generated files when make is run from any directory. It also fixes the problem which efad4f53 was targetting. Specifically, src/guestfs_protocol.(c|h) had an erroneous dependency on stamp-generator, and therefore generator.ml, despite not being directly created by it. This caused them to be recreated every time generator.ml ran rather than only when src/guestfs_protocol.x was updated, which cascaded into a daemon and therefore appliance update. This patch also changes the contents of the distribution tarball by including files created by rpcgen.
* Add make.sh.in to EXTRA_DIST.Richard Jones2009-11-031-1/+2
|
* appliance: Don't rebuild the appliance every time configure runs.Richard Jones2009-11-021-0/+9
| | | | | | | | | | config.status touches make.sh each time it runs, even if the resulting script would not change. This causes the appliance to get rebuilt much more frequently than is necessary. There's no way to stop configure running, but we can move the config.status command into a Makefile rule to stop this undesirable behaviour.
* build: remove trailing blank lines; enable the syntax-check ruleJim Meyering2009-08-041-1/+0
| | | | | | | | | | | | | | * cfg.mk (disable_temporarily): Remove sc_prohibit_trailing_blank_lines. * appliance/Makefile.am: Remove trailing blank line(s). * appliance/debian/modules/y0_install-guestfsd: Likewise. * appliance/make.sh.in: Likewise. * appliance/packagelist.in: Likewise. * appliance/update.sh.in: Likewise. * haskell/run-bindtests: Likewise. * ocaml/run-bindtests: Likewise. * python/run-python-tests: Likewise. * recipes/squashfs.example: Likewise. * ruby/run-ruby-tests: Likewise.
* Ignore failure of 'mv' commands in appliance Makefile.Richard W.M. Jones2009-07-311-2/+2
| | | | | A lot of people report these as 'errors' when they are not. Hide the error messages.
* Fix non-srcdir builds: Files generated by configure should be in the tarball.Richard Jones2009-07-161-2/+0
|
* More misc fixes to non-srcdir builds.Richard Jones2009-07-161-1/+1
|
* Miscellaneous fixes for non-srcdir builds.Richard Jones2009-07-161-1/+1
|
* Make it possible to build in a separate directoryMatthew Booth2009-07-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | This patch allows you to do: mkdir build cd build ../configure ... make This will output all generated files to the build directory. Given that autogen automatically runs configure, you can also do: BUILDDIR=./build ./autogen.sh which will do the right thing. Also: * Fix a dependency bug which means that guestfs_protocol.h isn't automatically rebuilt. * Re-running autogen.sh with no arguments won't blow away your previous configure arguments.
* remove superflous debirf scriptsGuido Günther2009-07-031-4/+0
|
* Don't keep rebuilding debirf module symlinks.Richard W.M. Jones2009-07-031-0/+1
|
* Add Debian appliance directory to the distfile.Richard W.M. Jones2009-07-031-1/+22
| | | | | | | 'make dist' won't copy symlinks into the output file, so we have to add a rule to the Makefile to copy these. (Issue reported by Guido Gunther).
* Don't rebuild the whole appliance if just the /init script has been changed.Richard W.M. Jones2009-07-021-2/+2
|
* define REDHAT and DEBIANGuido Günther2009-06-301-1/+1
| | | | so we can preprocess packagelist.in
* Fix permissions on generated scripts in the appliance/ directory.Richard W.M. Jones2009-06-241-10/+0
|
* test-boot-realistic rule should boot the rescue shell.Richard Jones2009-06-221-1/+1
|
* Rebuild supermin appliance when the daemon is updated.Richard Jones2009-06-221-1/+1
|
* Move init script into a separate file.Richard W.M. Jones2009-06-191-2/+3
|
* Move distro package list to a separate packagelist.in file.Richard W.M. Jones2009-06-191-2/+7
|
* Rename guestfs-supermin-helper -> libguestfs-supermin-helper.Richard Jones2009-06-181-3/+3
|
* Missing files from previous release.Richard Jones2009-06-151-1/+4
|