1. 20 1月, 2016 1 次提交
    • D
      docs: fix generation of docs from VPATH build · 7659bd92
      Daniel P. Berrange 提交于
      When generating docs in a VPATH build we get a failure to
      create a file due to the 'internals' subdir not existing:
      
        Generating internals/locking.html.tmp
        /bin/sh: line 3: internals/locking.html.tmp: No such file or directory
        rm: cannot remove ‘internals/locking.html.tmp’: No such file or directory
        Makefile:2229: recipe for target 'internals/locking.html.tmp' failed
        make: *** [internals/locking.html.tmp] Error 1
      
      For some reason, make has decided to run the target
      
        %.html.tmp: %.html.in site.xsl page.xsl sitemap.html.in $(acl_generated)
      
      instead of the target
      
        internals/%.html.tmp: internals/%.html.in subsite.xsl page.xsl sitemap.html.in
      
      Removing '$(acl_generated)' from the first target, inexplicably
      causes make to now run the correct target for the internals/
      files.
      
      Rather than figure this out, lets just combine the two targets
      into one.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      7659bd92
  2. 13 1月, 2016 1 次提交
  3. 12 1月, 2016 1 次提交
  4. 30 11月, 2015 1 次提交
    • E
      libvirt: introduce libvirt/libvirt-common.h.in · a20b6237
      Erik Skultety 提交于
      As it turned out, we need to share some enums and declarations between
      libvirt.h and libvirt-admin.h, but since our policy forbids direct includes of
      libvirt*.h, there has to be some header exempt from this rule. This patch moves
      the relevant part of code from libvirt.h.in to libvirt-common.h.in. Moreover,
      since there is no need to have libvirt.h generated anymore, introduce a new
      header libvirt.h which was previosly ignored from git and make the common
      header ignored and generated instead.
      a20b6237
  5. 09 9月, 2015 1 次提交
  6. 08 9月, 2015 1 次提交
  7. 20 8月, 2015 1 次提交
  8. 28 6月, 2015 1 次提交
  9. 26 6月, 2015 1 次提交
  10. 23 6月, 2015 1 次提交
  11. 16 6月, 2015 1 次提交
  12. 27 4月, 2015 1 次提交
  13. 04 12月, 2014 2 次提交
  14. 02 12月, 2014 2 次提交
  15. 20 11月, 2014 1 次提交
  16. 13 11月, 2014 1 次提交
    • D
      Fix API docs for header file re-organization · 47fb6138
      Daniel P. Berrange 提交于
      The API docs generators were broken by the header file
      re-organization. Specifically
      
       * html/libvirt-libvirt.html was empty (and should be deleted)
       * Makefile.am didn't install html/libvirt-libvirt-*.html
       * hvsupport.html was mostly empty
       * sitemap.html.in didn't list the new html/*.html files
      47fb6138
  17. 23 9月, 2013 1 次提交
  18. 12 9月, 2013 1 次提交
    • D
      Repair the search on libvirt.org · a41e95db
      Daniel Veillard 提交于
      First make sure that the input is xhtml as the stylesheets expect
      namespaced element, then use a span element instead of a as a
      is treated specially, finally adjust the makefile to check for
      the new span element and replace it with the PHP code
      a41e95db
  19. 31 8月, 2013 2 次提交
    • E
      build: shipped files must not depend on BUILT_SOURCES · cd3fa762
      Eric Blake 提交于
      'make distcheck' was failing with:
      make[3]: Entering directory `/home/eblake/libvirt-tmp2/libvirt-1.1.1/_build/docs'
      perl ../../docs/genaclperms.pl ../../src/access/viraccessperm.h > ../../docs/aclperms.htmlinc
      /bin/sh: ../../docs/aclperms.htmlinc: Permission denied
      
      when simulating the case of a user doing a VPATH build from a
      read-only source tree.  The culprit?  BUILT_SOURCES are _always_
      built, and so must NOT be built into srcdir and need not be part
      of the tarball.  On the other hand, shipped files must never
      depend on files in the builddir.  While it would be possible to
      fix the problem by generating aclperms.htmlinc into builddir,
      we then have the problem that we ship acl.html - we'd have to
      rejigger a lot of things to not ship pre-built html.  So this
      patch goes the other direction - we don't need BUILT_SOURCES,
      but instead ensure that we have proper dependencies so that
      all files in srcdir are up-to-date at the time the tarball is
      created.  And because we ship html files in the tarball, that
      implies we don't expect users to be able to rebuild them, so
      we must not clean any files that would trigger a rebuild except
      under the maintainer rules.
      
      * docs/Makefile.am (BUILT_SOURCES): Delete.
      (CLEANFILES): Downgrade aclperms.htmlinc cleanup...
      (maintainer-clean-local): ...and move hvsupport.html.in...
      (MAINTAINERCLEANFILES): ...to a maintainer action.
      (hvsupport.html.in): Write into srcdir.
      (hvsupport.html): Ensure files are built in order.
      (aclperms.htmlinc): Honor silent make.
      (EXTRA_DIST): Ship aclperms.htmlinc.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      cd3fa762
    • E
      build: fix 'make distcheck' out of the box · f06eb52f
      Eric Blake 提交于
      With the 1.1.1 tarball, if a user does 'make && make distcheck',
      things pass, but if they do 'make distcheck' after 'make clean',
      there is an odd failure:
      
        GEN      ../../docs/devhelp/index.html
      I/O error : Permission denied
      I/O error : Permission denied
      runtime error: file ../../docs/devhelp/devhelp.xsl line 43 element document
      xsltDocumentElem: unable to save to ../../docs/devhelp/libvirt-virterror.html
      I/O error : Permission denied
      I/O error : Permission denied
      
      This implies that the rules for 'make dist' are missing a
      dependency - the generated documentation needs to be up-to-date
      before creating the tarball, or else the tarball will be missing
      files, where the end user will end up trying to rebuild files in
      srcdir, and that fails when srcdir is read-only.
      
      1.1.1 plus this patch now works without issues (other issues have
      crept in to 1.1.2-rc1 that prevent 'make distcheck' from working,
      but those will be cleaned up in later patches).
      
      * docs/Makefile.am (dist-local): New dependency.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      f06eb52f
  20. 10 8月, 2013 1 次提交
    • D
      Add documentation for access control system · da13f2c7
      Daniel P. Berrange 提交于
      This adds two new pages to the website, acl.html describing
      the general access control framework and permissions models,
      and aclpolkit.html describing the use of polkit as an
      access control driver.
      
      page.xsl is modified to support a new syntax
      
        <div id="include" filename="somefile.htmlinc"/>
      
      which will cause the XSL transform to replace that <div>
      with the contents of 'somefile.htmlinc'. We use this in
      the acl.html.in file, to pull the table of permissions
      for each libvirt object. This table is autogenerated
      from the enums in src/access/viraccessperms.h by the
      genaclperms.pl script.
      
      newapi.xsl is modified so that the list of permissions
      checks shown against each API will link to the description
      of the permissions in acl.html
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      da13f2c7
  21. 19 7月, 2013 1 次提交
    • E
      maint: split long lines in Makefiles · d21d40bf
      Eric Blake 提交于
      Makefiles are another easy file to enforce line limits.
      
      Mostly straightforward; interesting tricks worth noting:
      src/Makefile.am: $(confdir) was already defined, use it in more places
      tests/Makefile.am: path_add and VG required some interesting compression
      
      * cfg.mk (sc_prohibit_long_lines): Add another test.
      * Makefile.am: Fix offenders.
      * daemon/Makefile.am: Likewise.
      * docs/Makefile.am: Likewise.
      * python/Makefile.am: Likewise.
      * src/Makefile.am: Likewise.
      * tests/Makefile.am: Likewise.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      d21d40bf
  22. 21 5月, 2013 1 次提交
    • E
      maint: use LGPL correctly · d7f53c7b
      Eric Blake 提交于
      Several files called out COPYING or COPYING.LIB instead of using
      the normal boilerplate.  It's especially important that we don't
      call out COPYING from an LGPL file, since COPYING is traditionally
      used for the GPL.  A few files were lacking copyright altogether.
      
      * src/rpc/gendispatch.pl: Add missing copyright.
      * Makefile.nonreentrant: Likewise.
      * src/check-symfile.pl: Likewise.
      * src/check-symsorting.pl: Likewise.
      * src/driver.h: Likewise.
      * src/internal.h: Likewise.
      * tools/libvirt-guests.sh.in: Likewise.
      * tools/virt-pki-validate.in: Mention copyright in comment, not just code.
      * tools/virt-sanlock-cleanup.in: Likewise.
      * src/rpc/genprotocol.pl: Spell out license terms.
      * src/xen/xend_internal.h: Likewise.
      * src/xen/xend_internal.c: Likewise.
      * Makefile.am: Likewise.
      * daemon/Makefile.am: Likewise.
      * docs/Makefile.am: Likewise.
      * docs/schemas/Makefile.am: Likewise.
      * examples/apparmor/Makefile.am: Likewise.
      * examples/domain-events/events-c/Makefile.am: Likewise.
      * examples/dominfo/Makefile.am: Likewise.
      * examples/domsuspend/Makefile.am: Likewise.
      * examples/hellolibvirt/Makefile.am: Likewise.
      * examples/openauth/Makefile.am: Likewise.
      * examples/python/Makefile.am: Likewise.
      * examples/systemtap/Makefile.am: Likewise.
      * examples/xml/nwfilter/Makefile.am: Likewise.
      * gnulib/lib/Makefile.am: Likewise.
      * gnulib/tests/Makefile.am: Likewise.
      * include/Makefile.am: Likewise.
      * include/libvirt/Makefile.am: Likewise.
      * python/Makefile.am: Likewise.
      * python/tests/Makefile.am: Likewise.
      * src/Makefile.am: Likewise.
      * tests/Makefile.am: Likewise.
      * tools/Makefile.am: Likewise.
      * configure.ac: Likewise.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      d7f53c7b
  23. 07 5月, 2013 1 次提交
  24. 03 5月, 2013 1 次提交
    • D
      Fix multiple formatting problems in HTML docs · f2f9742d
      Daniel P. Berrange 提交于
      The rule generating the HTML docs passing the --html flag
      to xsltproc. This makes it use the legacy HTML parser, which
      either ignores or tries to fix all sorts of broken XML tags.
      There's no reason why we should be writing broken XML in
      the first place, so removing --html and adding the XHTML
      doctype to all files forces us to create good XML.
      
      This adds the XHTML doc type and fixes many, many XML tag
      problems it exposes.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      f2f9742d
  25. 02 4月, 2013 1 次提交
  26. 22 1月, 2013 2 次提交
  27. 19 1月, 2013 1 次提交
  28. 14 1月, 2013 1 次提交
    • D
      Introduce an LXC specific public API & library · 3d1596b0
      Daniel P. Berrange 提交于
      This patch introduces support for LXC specific public APIs. In
      common with what was done for QEMU, this creates a libvirt_lxc.so
      library and libvirt/libvirt-lxc.h header file.
      
      The actual APIs are
      
        int virDomainLxcOpenNamespace(virDomainPtr domain,
                                      int **fdlist,
                                      unsigned int flags);
      
        int virDomainLxcEnterNamespace(virDomainPtr domain,
                                       unsigned int nfdlist,
                                       int *fdlist,
                                       unsigned int *noldfdlist,
                                       int **oldfdlist,
                                       unsigned int flags);
      
      which provide a way to use the setns() system call to move the
      calling process into the container's namespace. It is not
      practical to write in a generically applicable manner. The
      nearest that we could get to such an API would be an API which
      allows to pass a command + argv to be executed inside a
      container. Even if we had such a generic API, this LXC specific
      API is still useful, because it allows the caller to maintain
      the current process context, in particular any I/O streams they
      have open.
      
      NB the virDomainLxcEnterNamespace() API is special in that it
      runs client side, so does not involve the internal driver API.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      3d1596b0
  29. 21 12月, 2012 1 次提交
  30. 23 10月, 2012 1 次提交
  31. 06 9月, 2012 1 次提交
    • E
      build: don't fail when xsltproc is missing · d51024ae
      Eric Blake 提交于
      On a machine without xsltproc, the build failed with:
      
      Scripting search.php
      /usr/local/bin/bash: line 1: search.php.tmp: No such file or directory
      rm: ./search.php: No such file or directory
      
      Regression introduced in commit 28183590.
      
      * docs/Makefile.am (%.php): Skip in the same conditions when the
      .tmp file is skipped.
      d51024ae
  32. 10 8月, 2012 1 次提交
    • M
      docs: autogenerate search.php · 28183590
      Martin Kletzander 提交于
      This patch makes search.php autogenerated from search.php.in, thus
      removing hardcoded menus, footer etc. and the search.php is added to
      .gitignore.
      
      There is new rule added for *.php files (to make it bit less
      hardcoded) that takes *.php.code.in and injects it inside the
      generated *.php (xslt was not happy about php code in the source xml).
      28183590
  33. 05 6月, 2012 1 次提交
    • E
      build: fix 'make distcheck' issues · 7bff56a0
      Eric Blake 提交于
      We had a distributed file (remote_protocol.h, which in turn was
      a prereq to remote_driver.c) depending on a generated file
      (libvirt_probes.h), which is a no-no for a VPATH build from a
      read-only source tree (no wonder 'make distcheck' tests precisely
      that situation):
      
           File `libvirt_driver_remote.la' does not exist.
             File `libvirt_driver_remote_la-remote_driver.lo' does not exist.
                   Prerequisite `libvirt_probes.h' is newer than target `../../src/remote/remote_protocol.h'.
                  Must remake target `../../src/remote/remote_protocol.h'.
      Invoking recipe from Makefile:7464 to update target `../../src/remote/remote_protocol.h'.
      make[3]: Entering directory `/home/remote/eblake/libvirt-tmp2/build/libvirt-0.9.12/_build/src'
        GEN    ../../src/remote/remote_protocol.h
      cannot create ../../src/remote/remote_protocol.h: Permission denied at ../../src/rpc/genprotocol.pl line 31.
      make[3]: *** [../../src/remote/remote_protocol.h] Error 13
      
      Rather than making distributed .c files depend on generated files, we
      really want to ensure that compilation into .lo files is not attempted
      until the generated files are present, done by this patch.  Since there
      were two different sets of conditionally generated files that both
      feed the .lo file, I had to introduce a new variable REMOTE_DRIVER_PREREQS
      to keep automake happy.
      
      After that fix, the next issue was that make treats './foo' and 'foo'
      differently in determining whether an implicit %foo rule is applicable,
      with the result that locking/qemu-sanlock.conf wasn't properly being
      built at the right times.  Also, the output for using the .aug test
      files was a bit verbose.
      
      After fixing the src directory, the next error is related to the docs
      directory, where the tarball is missing a stamp file and thus tries to
      regenerate files that are already present:
      
        GEN    ../../docs/apibuild.py.stamp
      Traceback (most recent call last):
        File "../../docs/apibuild.py", line 2511, in <module>
          rebuild("libvirt")
        File "../../docs/apibuild.py", line 2495, in rebuild
          builder.serialize()
        File "../../docs/apibuild.py", line 2424, in serialize
          output = open(filename, "w")
      IOError: [Errno 13] Permission denied: '../../docs/libvirt-api.xml'
      make[5]: *** [../../docs/apibuild.py.stamp] Error 1
      
      and fixing that exposed another case of a distributed file (generated
      html) depending on a built file (libvirt.h), but only when doing an
      in-tree build, because of a file glob.
      
      * src/Makefile.am ($(srcdir)/remote/remote_driver.c): Change...
      (libvirt_driver_remote_la-remote_driver.lo): ...to the real
      dependency.
      ($(builddir)/locking/%-sanlock.conf): Drop $(builddir), so that
      rule gets run in time for test_libvirt_sanlock.aug.
      (test_libvir*.aug): Cater to silent build.
      (conf_DATA): Don't ship qemu-sanlock.conf in the tarball, since it
      is trivial to regenerate.
      * docs/Makefile.am (EXTRA_DIST): Ship our stamp file.
      ($(APIBUILD_STAMP)): Don't depend on generated file.
      7bff56a0
  34. 11 5月, 2012 1 次提交
    • E
      build: fix stamp file name · c0057d9a
      Eric Blake 提交于
      Ever since commit c964b6aa, make was trying to find the timestamp
      of '""./apibuild.py".stamp"', but only touching 'apibuild.py.stamp',
      and thus always rebuilding.  Reported by Daniel P. Berrange.
      
      * docs/Makefile.am (APIBUILD, APIBUILD_STAMP): Omit bogus quotes.
      c0057d9a
  35. 28 4月, 2012 1 次提交
  36. 04 4月, 2012 1 次提交
    • D
      Fix parallel build in docs/ directory · 4f4b496e
      Daniel P. Berrange 提交于
      Every now & then, with parallel builds, we get a failure to
      validate hvsupport.html.in.  I eventually noticed that this
      is because we get 2 instances of the generator running at
      once.
      
      We already list hvsupport.html.in in BUILT_SOURCES but this
      was not working. It turns out the flaw is that we were
      adding deps to the 'all:' target instead of the 'all-am:'
      target. BUILT_SOURCES is a dep of 'all', so any custom
      targets written in Makefile.am must use 'all-am:' so that
      they don't get run until BUILT_SOURCES are completely
      generated
      
      * docs/Makefile.am: s/all/all-am/
      4f4b496e