summaryrefslogtreecommitdiffstats
path: root/src/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* Remove "convenience header" "gettext.h" and use <libintl.h> instead.Richard W.M. Jones2012-05-011-1/+0
| | | | | | | | | | | | gettextize provides a local file called "gettext.h". Remove this and use <libintl.h> from glibc headers instead. Most of this change is mechanical: #include <libintl.h> in every C file which uses any gettext function. But also we remove the gettext.h file, and adjust the "_" macros. Note that this effectively removes the ./configure --disable-nls option, although we don't know if that ever worked.
* Move 'libguestfs.pc' (pkgconfig file) to src/ directory.Richard W.M. Jones2012-04-301-0/+6
| | | | Since it describes the C library, it's better in the src/ directory.
* New APIs: mount-local, mount-local-run, umount-local (FUSE support in the API).Richard W.M. Jones2012-03-291-1/+8
| | | | | | | | | | Add FUSE support directly to the API. Instead of needing to use the external 'guestmount' command, you can mount the libguestfs filesystem space on a local mountpoint using an API call from any language. Note that although mount-local-run is marked as Cancellable, the current implementation does not support it, but it would be relatively simple to add it.
* lib: Use -fvisibilty=hidden by default; only ABI symbols are now visible.Richard W.M. Jones2012-01-181-3/+5
| | | | http://gcc.gnu.org/wiki/Visibility
* Fix rpcgen post-processing for out-of-tree buildsHilko Bengen2011-12-061-1/+1
|
* libguestfs: Added gnulib includes from builddir, as suggested by the Gnulib ↵Hilko Bengen2011-12-011-1/+1
| | | | | | | | documentation Since some modules (`getopt', for example) may copy files into the build directory, `top_builddir/lib' is needed as well as `top_srcdir/lib'. -- GNU Gnulib manual, section 2.2 Initial import
* Update FSF address.Matthew Booth2011-11-081-1/+1
|
* out-of-tree build: fix building libraryHilko Bengen2011-08-151-3/+3
|
* out-of-tree build: fix documentation generationHilko Bengen2011-08-151-4/+4
|
* gnulib: Add all other libs when linking libguestfs.so.Richard W.M. Jones2011-08-051-2/+9
| | | | This updates the previous two commits.
* gnulib: Add $(LIB_CLOCK_GETTIME) when linking libguestfs.so.Richard W.M. Jones2011-08-051-1/+2
| | | | | We don't use this library (it is only used in the daemon), but we need to add this to make the linker happy.
* New API: inspect-get-icon returns the guest icon.Richard W.M. Jones2011-06-281-0/+1
| | | | | | | | | | This API returns the guest's favicon if found, else an icon representing the guest operating system. Currently supported by this patch: Fedora, RHEL and derivatives, Debian (but not Ubuntu), Windows XP, Windows 7. This also updates virt-inspector to include an <icon> element containing the icon in base64 encoding.
* Enable deprecation warnings on all C programs.Richard W.M. Jones2011-05-171-0/+1
|
* inspect: Abstract out db_dump code for listing RPM applications.Richard W.M. Jones2011-04-141-0/+1
| | | | | | | | | | | There are two changes here: (1) The code for listing RPM applications ran db_dump and parsed the output. We abstract out that parsing code into a separate reusable module (src/dbdump.c). (2) The old db_dump parsing code used db_dump -p (printable) format. Instead use db_dump -k (hex) format so we can read binary fields.
* inspect: Split code into separate files.Richard W.M. Jones2011-04-141-0/+5
| | | | | | | | | | | | | | | | | The src/inspect.c file had grown rather large -- 3,500 lines. Split it across several files according to function. This is just moving code. After the split the files are more evenly divided: 536 src/inspect_apps.c 766 src/inspect.c 537 src/inspect_fs.c 404 src/inspect_fs_cd.c 785 src/inspect_fs_unix.c 535 src/inspect_fs_windows.c 3563 total
* inspect: Move shared PCRE match functions to separate file.Richard W.M. Jones2011-04-131-0/+1
| | | | This is just moving code around.
* Compile rpcgen-generated files with -fno-strict-aliasingMatthew Booth2011-04-071-7/+4
| | | | | rpcgen generates source which can't be safely compiled with strict-aliasing enabled.
* New event API (RHBZ#664558).Richard W.M. Jones2011-03-151-0/+1
| | | | | | | | | | | | | This API allows more than one callback to be registered for each event, makes it possible to call the API from other languages, and allows [nearly all] log, debug and trace messages to be rerouted from stderr. An older version of this API was discussed on the mailing list here: https://www.redhat.com/archives/libguestfs/2010-December/msg00081.html https://www.redhat.com/archives/libguestfs/2011-January/msg00012.html This also updates guestfish to use the new API for its progress bars.
* 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.