summaryrefslogtreecommitdiffstats
path: root/src/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* build: Remove check for root.Richard W.M. Jones2010-12-091-11/+0
| | | | | | | With the new package building system, it is no longer dangerous to run 'configure', 'make' or 'make check' as root (although it is still not necessary and not advisable). In any case we don't need to check this.
* build: Centralize all POD manipulation in 'podwrapper.sh' script.Richard W.M. Jones2010-11-241-17/+14
|
* build: Missing backslash again.Maxim Koltsov2010-11-141-1/+1
|
* lib: Make <guestfs.h> be completely generated.Richard W.M. Jones2010-11-111-5/+2
| | | | | This removes the 'not-quite-separate' guestfs-actions.h and guestfs-structs.h files.
* Fix small typo in a comment in src/Makefile.am.Richard W.M. Jones2010-11-111-1/+1
|
* New API: add-domainRichard Jones2010-11-111-1/+6
| | | | | | | | | | | | | | | | | | | This new API allows you to add the disks from a libvirt domain. In guestfish you can use the 'domain' command to access the API, eg: ><fs> domain Fedora14 libvirturi:qemu:///system 1 The returned number is the number of disks that were added. Also here is a proposed (but commented out) low-level API which would allow you to add a domain from a virDomainPtr. However there are several problems with this API -- see discussion on the list: https://www.redhat.com/archives/libguestfs/2010-November/thread.html#00028
* lib: Make pcre, libmagic and hivex libraries optional.Richard Jones2010-11-101-2/+4
| | | | | | | | | | | | | | | This change makes these libraries optional. If they are not available at compile time then certain core API features will be disabled (see below). This also changes PCRE detection to use pkg-config instead of the ad hoc autoconf checks. The large inspect.c file has been split out into separate function-specific files. file-architecture: requires pcre & libmagic inspection: requires pcre & hivex
* Add missing generated files to the tarball (thanks maksbotan).Richard W.M. Jones2010-11-071-1/+1
| | | | | | | | C# bindings were omitted entirely. Add a Makefile.am for this directory even though we don't build these. Because of a missing backslash, some POD files were not being included.
* docs: Which API calls were first supported in which upstream versions.Richard W.M. Jones2010-11-041-1/+4
| | | | | | | | Run src/api-support/update-from-tarballs.sh (this won't work unless you have a local copy of the tarballs from the website). src/api-support/added contains the result of running the script, a list of pairs: (API name, version first appeared).
* lib: Expose errno through new API guestfs_last_errno.Richard W.M. Jones2010-11-031-6/+23
| | | | | | | If either the daemon sends back an errno, or a system call fails in the library, save the errno in the handle and then make it available to callers through the guestfs_last_errno function.
* build: require Augeas for library.Richard Jones2010-09-111-2/+2
| | | | | | Augeas has been required since we moved the inspection code to C, however we were not correctly enforcing this in configure.ac, nor correctly linking to the library until now.
* build: Don't distribute src/generator.ml, no longer exists.Richard Jones2010-09-111-1/+0
|
* Split generator into separate source files.Richard Jones2010-09-111-20/+1
| | | | | | | | | | 'src/generator.ml' is no more. Instead the generator is logically split up over many different source files. Read generator/README for help and tips. We compile the generator down to bytecode, not native code. This means it will run more slowly, but is done for maximum portability.
* build: guestfs-structs.h was missing from libguestfs_la_SOURCES.Richard Jones2010-09-041-0/+1
|
* Change to using ext2-based, cached supermin appliance.Richard Jones2010-08-231-0/+1
| | | | | | | | | | | | This changes the method used to build the supermin appliance to use the new ext2-based appliance supported by latest febootstrap. The appliance can also be cached, so we avoid rebuilding it each time it is used. Mailing list discussion goes into the rationale and details: https://www.redhat.com/archives/libguestfs/2010-August/msg00028.html Requires febootstrap >= 2.8.
* New APIs for guest inspection.Richard Jones2010-08-171-1/+2
| | | | | | | | | | | | | | | | | | | | | This commit converts (some of) the Perl inspection code to C and makes it available through core APIs. The new APIs are: inspect-os - Does the inspection, returns list of OSes inspect-get-* - Get results of the inspection where '*' is one of: type - 'windows' or 'linux' distro - Linux distro arch - architecture product-name - long product name string major-version minor-version - major.minor version of OS mountpoints - get a list of the mountpoints filesystems - get all filesystems associated with the OS This works for all existing supported Linux and Windows OSes.
* New API: file-architectureRichard Jones2010-08-171-1/+2
| | | | | | This change simply converts the existing Perl-only function file_architecture into a core API call. The core API call is written in C and available in all languages and from guestfish.
* Rearrange library code into separate files.Richard Jones2010-07-271-0/+2
| | | | | | | | | | | | We split the library code into these separate files: - guestfs.c: creating handles, closing handles, handle-related variables - actions.c: generated library-side stubs for each action - bindtests.c: generated code to test bindings - launch.c: launching the appliance - proto.c: the library side of the daemon communications protocol This is just code movement.
* Rename guestfs-{actions,bindtests}.c to {actions,bindtests}.cRichard Jones2010-07-271-4/+4
| | | | | Rename these two generated files, in preparation for splitting up the main src/guestfs.c file.
* Check user doesn't run configure, make or make check as root.Richard Jones2010-04-201-0/+11
| | | | (Thanks to Yufang Zhang for helping to debug this issue).
* Rerun generator if images/test.iso does not exist or has been updated.Richard Jones2010-04-171-1/+4
| | | | | The MD5 hash of this file is embedded in the output of the generator.
* Rewrite libguestfs-supermin-helper in C.Richard Jones2010-03-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Add guestfs.pod and guestfish.pod to EXTRA_DIST.1.0.81Richard Jones2010-01-131-1/+2
|
* Use linker script to control visibility of symbols.Richard Jones2010-01-041-3/+7
|
* Experimental C# bindings.Richard Jones2010-01-021-0/+1
| | | | Tested in only limited situations, with Mono on Linux.
* Move guestfs(3) and guestfish(1) man pages into subdirectories.Richard Jones2009-12-311-2/+32
| | | | | | | | These manual pages have for a very long time 'lived' in the top source directory. Clean up this situation by moving those manual pages (plus associated generated files) into the src/ and fish/ subdirectories respectively.
* build: Fix typo in filename.Richard Jones2009-12-161-1/+1
|
* lib: Link with $(LTLIBTHREAD), required by Gnulib lock module.Richard Jones2009-12-071-1/+3
| | | | This fixes commit cada248a53858341c91f70392e8f5b6e47d9b4fe.
* build: Add missing dependency libguestfs.la->guestfs_protocol.hMatthew Booth2009-11-201-0/+1
|
* build: Fix inter-directory dependenciesMatthew Booth2009-11-191-16/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* BUILT_SOURCES now depends on running the generator.Richard Jones2009-11-181-1/+1
| | | | This completely reverts commit efad4f53923dcca94613e193d6383bd032e70498.
* Generate guestfs_protocol.x when stamp-generator updatesMatthew Booth2009-11-111-0/+2
| | | | | This partially reverts efad4f53923dcca94613e193d6383bd032e70498. guestfs_protocol.x wasn't being generated when building from a clean checkout.
* Don't export STREQ and friends in <guestfs.h>Richard Jones2009-11-101-0/+1
| | | | | Move these to private header file(s) and other places as required since these aren't part of the public API.
* Don't update appliance after running generator.Richard Jones2009-11-051-4/+0
| | | | | | I'm not sure why these dependencies exist, but they cause the appliance to be updated every time the generator runs, which appears to be unnecessary.
* Move guestfs-internal-actions.h to EXTRA_DIST.Richard Jones2009-09-141-2/+2
|
* Non-daemon actions indirect through generated code.Richard Jones2009-09-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously non-daemon actions were called directly by user code, eg: /* Non-generated */ int guestfs_set_verbose (guestfs_h *g, int v) { g->verbose = !!v; return 0; } This changes these actions so they go indirectly via some generated code, eg: /* Generated */ int guestfs_set_verbose (guestfs_h *g, int verbose) { return guestfs__set_verbose (g, verbose); } /* Non-generated */ int guestfs__set_verbose (guestfs_h *g, int v) { g->verbose = !!v; return 0; } The aim is to have a place in the generated code where we can add debug or tracing information for these non- daemon calls.
* build: new configure-time option: --enable-gcc-warningsJim Meyering2009-08-181-1/+3
| | | | | * configure.ac: Define/configure it. * src/Makefile.am: Use new variables.
* build: suppress an ignored-write-return-value warningJim Meyering2009-08-181-1/+3
| | | | | | | | | * bootstrap (modules): Add ignore-value. * src/guestfs.c: Include "ignore-value.h". (stdout_event): Ignore failure to write to stderr. Also, prefer STDERR_FILENO over the literal "2". * src/Makefile.am (libguestfs_la_CPPFLAGS): Include gnulib's .h files. (libprotocol_la_CFLAGS): Remove -Wall -Wno-unused.
* avoid compiler warnings about unused vars in generated codeJim Meyering2009-08-181-2/+12
| | | | | * src/Makefile.am: Compile protocol.c into a convenience library, so it can have its own CFLAGS, and link that with the destination one.
* Fix for non-srcdir builds: more misc fixes.Richard Jones2009-07-161-4/+6
|
* Fix for non-srcdir builds: Run src/generator.ml from the srcdir.Richard Jones2009-07-161-4/+4
| | | | | | | Note that files generated by src/generator.ml are stored in the srcdir, *not* the builddir. The reason is so that they can be included in the tarball and will appear in the srcdir for tarball builds.
* Move BUILT_SOURCES so the comment is back in the right place.Richard Jones2009-07-131-11/+11
|
* Make it possible to build in a separate directoryMatthew Booth2009-07-031-2/+6
| | | | | | | | | | | | | | | | | | | | | | 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.
* arrange to build some generated sourcesJim Meyering2009-07-021-0/+9
| | | | | * src/Makefile.am (BUILT_SOURCES): Define. ($(BUILT_SOURCES)): Depend on stamp-generator.
* Generator now runs automatically when it has changed.Richard W.M. Jones2009-07-021-3/+16
|
* Version 1.0.52.1.0.52Richard W.M. Jones2009-06-241-1/+2
|
* Implement libtool library versioning.Richard W.M. Jones2009-06-231-1/+43
| | | | | | | | Use maximum proc_nr (MAX_PROC_NR) as a surrogate for the library ABI version, resulting in version numbers such as libguestfs.so.0.<MAX_PROC_NR>.0 for the final library. Add ABI guarantee to the documentation.
* Add the test0* functions, used to test language bindings.Richard W.M. Jones2009-05-281-0/+1
|
* Gettextize the source, make library strings translatable.Richard Jones2009-05-211-1/+2
|
* build: don't tell "make clean" to remove my '~' backup filesJim Meyering2009-04-301-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hi Rich, automake's policy on what to remove via "make clean" is reasonable: if running build rules creates it, then "make clean" can and should remove it. However, even if build rules happen to create backup files, please remove only the specific ones they can create, not all of the ones in a directory. Just in case someone relies on those and expect them to hang around... >From 1e8be391ac17b4ddcf9671e8413d2660844e6993 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyering@redhat.com> Date: Thu, 30 Apr 2009 15:47:52 +0200 Subject: [PATCH] build: don't tell "make clean" to remove my '~' backup files * Makefile.am (CLEANFILES): Don't remove '~' backup files. * daemon/Makefile.am: Ditto. * examples/Makefile.am: Ditto. * fish/Makefile.am: Ditto. * images/Makefile.am: Ditto. * inspector/Makefile.am: Ditto. * java/Makefile.am: Ditto. * ocaml/Makefile.am: Ditto. * ocaml/examples/Makefile.am: Ditto. * perl/Makefile.am: Ditto. * python/Makefile.am: Ditto. * ruby/Makefile.am: Ditto. * src/Makefile.am: Ditto.