summaryrefslogtreecommitdiff
path: root/docs
AgeCommit message (Collapse)AuthorFilesLines
2020-10-06codegen: Remove bytes array length supportFrediano Ziglio1-4/+1
This syntax was only used in protocol 1 which has been removed time ago. Beside not being used it's confusing and prone to errors, array size is specified using 2 identifiers, one reporting bytes and the other number of items, one used for marshalling, the other for demarshalling. Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
2020-04-07proto: Allows to specify @deprecated option for flags and enumsFrediano Ziglio1-0/+6
We want to obsolete from enumeration values, currently CELT. The removal of check in has_attr is not an issue, as the attributes are already checked by fix_attributes calls. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Victor Toso <victortoso@redhat.com>
2019-02-21docs: add spice URI schemeMarc-André Lureau3-1/+133
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2019-01-15build-sys: improve asciidoc rules to allow multiple targetsMarc-André Lureau2-12/+22
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com>
2018-11-28Fix some additional typosJonathon Jongsma1-7/+7
Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com>
2018-11-21docs: Document to_ptr protocol attributeFrediano Ziglio1-1/+24
Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Snir Sheriber <ssheribe@redhat.com>
2018-11-21docs: Fix typos and grammarFrediano Ziglio1-8/+8
Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Snir Sheriber <ssheribe@redhat.com>
2018-10-15codegen: Remove minor attributeFrediano Ziglio1-5/+0
The idea in version 1 of the protocol was to extend it using the minor version. However this was replaced by the usage of capabilities and the minor attribute (which was not much used in version 1) was abandoned in version 2. This patch create a big difference in the code generated but only because the minor version was passed between all possible functions as argument. Note that exported functions retain the minor argument for compatibility reasons. The demarshaller code export directly spice_get_client_channel_parser or spice_get_server_channel_parser functions which returns internal module functions which parse message of specific channels. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2018-10-15codegen: Remove fixedsize attributeFrediano Ziglio1-6/+0
This attribute was used only in SPICE version 1. The intention was use fixed size for switch type in the protocol. However this does not bring any improvement, just increase network bytes used. Generated code does not change. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2018-10-15codegen: Remove bytes_count attributeFrediano Ziglio1-5/+0
This attribute was used only in SPICE version 1. Its usage was confusing, and was replaced by the simple usage of array size. Generated code does not change. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2018-06-18build: Remove docs/.gitignoreChristophe Fergeau1-1/+0
It was added together with the meson build, but it's currently being managed by git.mk, so it should not be in git Acked-by: Victor Toso <victortoso@redhat.com>
2018-06-01Add support for building with meson/ninjaEduardo Lima (Etrunko)3-0/+12
In a comparison with current autotools build system, meson/ninja provides a huge improvement in build speed, while keeping the same functionalities currently available and being considered more user friendly. The new system coexists within the same repository with the current one, so we can do more extensive testing of its functionality before deciding if the old system can be removed, or for some reason, has to stay for good. - Meson: https://mesonbuild.com This is the equivalent of autogen/configure step in autotools. It generates the files that will be used by ninja to actually build the source code. The project has received lots of traction recently, with many GNOME projects willing to move to this new build system. The following wiki page has more details of the status of the many projects being ported: https://wiki.gnome.org/Initiatives/GnomeGoals/MesonPorting Meson has a python-like syntax, easy to read, and the documentation on the project is very complete, with a dedicated page on how to port from autotools, explaining how most common use cases can be implemented using meson. http://mesonbuild.com/Porting-from-autotools.html Other important sources of information: http://mesonbuild.com/howtox.html http://mesonbuild.com/Syntax.html http://mesonbuild.com/Reference-manual.html - Ninja: https://ninja-build.org Ninja is the equivalent of make in an autotools setup, which actually builds the source code. It has being used by large and complex projects such as Google Chrome, Android and LLVM. There is not much to say about ninja (other than it is much faster than make) because we won't interact directly with it as much, as meson does the middle man job here. The reasoning for creating ninja in the first place is explained on the following post: http://neugierig.org/software/chromium/notes/2011/02/ninja.html Also its manual provides more in-depth information about the design principles: https://ninja-build.org/manual.html - Basic workflow: Meson package is available for most if not all distros, so, taking Fedora as an example, we only need to run: # dnf -y install meson ninja-build. With Meson, building in-tree is not possible at all, so we need to pass a directory as argument to meson where we want the build to be done. This has the advantage of creating builds with different options under the same parent directory, e.g.: $ meson ./build --prefix=/usr $ meson ./build-extra -Dextra-checks=true -Dalignment-checks=true After configuration is done, we call ninja to actually do the build. $ ninja -C ./build $ ninja -C ./build install Ninja defaults to parallel builds, and this can be changed with the -j flag. $ ninja -j 10 -C ./build - Hacking: * meson.build: Mandatory for the project root and usually found under each directory you want something to be built. * meson_options.txt: Options that can interfere with the result of the build. Signed-off-by: Eduardo Lima (Etrunko) <etrunko@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Jonathon Jongsma <jjongsma@redhat.com>
2017-03-28build-sys: don't dist spice-protocol.htmlMarc-André Lureau1-1/+0
The HTML file is not built by default. This fixes make distcheck in spice-gtk. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2016-10-27Fix gitignore with new docs folderVictor Toso1-2/+3
The generated spice_protocol.html file and the Makefile were not included in gitignore. This patch fixes it. Signed-off-by: Victor Toso <victortoso@redhat.com> Signed-off-by: Christophe Fergeau <cfergeau@redhat.com>
2016-10-18Add protocol documentation for "channel" and "protocol"Frediano Ziglio1-1/+45
Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Victor Toso <victortoso@redhat.com>
2016-10-18Fix BNF notation in documentationFrediano Ziglio1-5/+5
Definition names have no angular brackets. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Victor Toso <victortoso@redhat.com>
2016-10-17More work on attribute protocol documentationFrediano Ziglio1-4/+17
Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Victor Toso <victortoso@redhat.com>
2016-10-17Extended protocol documentationFrediano Ziglio1-0/+360
Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Victor Toso <victortoso@redhat.com>
2016-10-17Start writing some documentation on protocolFrediano Ziglio1-0/+48
Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Victor Toso <victortoso@redhat.com>
2016-10-17Start adding protocol file documentationFrediano Ziglio2-0/+19
The protocol file is not documented and people have to read code to understand the specification. This can lead to unexpected or not optimal results so it's better to have it documented. The m4/spice_manual.m4 came from spice server and is meant to be reused. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Victor Toso <victortoso@redhat.com>