[Kimchi-devel] [PATCH 3/6] Add new spice-html5 code to Kimchi build process

Zhou Zheng Sheng zhshzhou at linux.vnet.ibm.com
Mon Oct 13 08:40:55 UTC 2014


on 2014/10/11 05:16, Aline Manera wrote:
> By default Kimchi will not install the new spice-html5 code as
> almost all the supported Linux distributions already has it available in a
> package.
> If the system you are running Kimchi does not have a spice-html5, you
> can run: ./autogen.sh --with-spice-html5 to get it.
> 
> Signed-off-by: Aline Manera <alinefm at linux.vnet.ibm.com>
> ---
>  autogen.sh                            |  2 ++
>  configure.ac                          | 13 +++++++++++++
>  contrib/kimchi.spec.fedora.in         | 22 +---------------------
>  contrib/kimchi.spec.suse.in           | 22 +---------------------
>  ui/Makefile.am                        |  2 +-
>  ui/spice-html5/Makefile.am            | 25 +++++++++++++++++++++++++
>  ui/spice-html5/css/Makefile.am        | 20 ++++++++++++++++++++
>  ui/spice-html5/pages/Makefile.am      | 20 ++++++++++++++++++++
>  ui/spice-html5/thirdparty/Makefile.am | 20 ++++++++++++++++++++
>  9 files changed, 103 insertions(+), 43 deletions(-)
>  create mode 100644 ui/spice-html5/Makefile.am
>  create mode 100644 ui/spice-html5/css/Makefile.am
>  create mode 100644 ui/spice-html5/pages/Makefile.am
>  create mode 100644 ui/spice-html5/thirdparty/Makefile.am
> 
> diff --git a/autogen.sh b/autogen.sh
> index 0f22dba..952b45e 100755
> --- a/autogen.sh
> +++ b/autogen.sh
> @@ -12,6 +12,8 @@ fi
> 
>  if [ "x$1" == "x--system" ]; then
>      ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
> +elif [ "x$1" == "x--with-spice-html5" ]; then
> +    ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --with-spice-html5

It seems "--system" does not conflict with "--with-spice-html5", this
two options are orthogonal. Maybe just the following is enough.

  if [ "x$1" == "x--system" ]; then
      ./configure ... "$@"

For example, when a RHEL7 developer wants to run Kimchi from source
code, he may want to use "./autogen.sh --with-spice-html5".

>  else
>     if [ $# -gt 0 ]; then
>          ./configure $@
> diff --git a/configure.ac b/configure.ac
> index 3f6f008..a69406b 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -64,6 +64,15 @@ else
>  AC_SUBST([ENABLE_SAMPLE], [False])
>  fi
> 
> +AC_ARG_WITH(
> +    [spice-html5],
> +    [AS_HELP_STRING([--with-spice-html5],
> +                    [Build Kimchi with spice-html5 @<:@default=no@:>@])],
> +    ,
> +    [with_spice_html5="no"]
> +)
> +AM_CONDITIONAL([WITH_SPICE], [test "x$with_spice_html5" = xyes])
> +
>  AC_CONFIG_FILES([
>      po/Makefile.in
>      po/gen-pot
> @@ -90,6 +99,10 @@ AC_CONFIG_FILES([
>      ui/images/theme-default/Makefile
>      ui/js/Makefile
>      ui/js/spice/Makefile
> +    ui/spice-html5/Makefile
> +    ui/spice-html5/css/Makefile
> +    ui/spice-html5/pages/Makefile
> +    ui/spice-html5/thirdparty/Makefile
>      ui/libs/Makefile
>      ui/libs/themes/Makefile
>      ui/libs/themes/base/Makefile
> diff --git a/contrib/kimchi.spec.fedora.in b/contrib/kimchi.spec.fedora.in
> index 2ca3076..29583e4 100644
> --- a/contrib/kimchi.spec.fedora.in
> +++ b/contrib/kimchi.spec.fedora.in
> @@ -160,27 +160,7 @@ rm -rf $RPM_BUILD_ROOT
>  %{_datadir}/kimchi/doc/kimchi-templates.png
>  %{_prefix}/share/locale/*/LC_MESSAGES/kimchi.mo
>  %{_datadir}/kimchi/config/ui/*.xml
> -%{_datadir}/kimchi/ui/css/spice/spice.css
> -%{_datadir}/kimchi/ui/css/theme-default.min.css
> -%{_datadir}/kimchi/ui/images/*.png
> -%{_datadir}/kimchi/ui/images/*.ico
> -%{_datadir}/kimchi/ui/images/theme-default/*.png
> -%{_datadir}/kimchi/ui/images/theme-default/*.gif
> -%{_datadir}/kimchi/ui/js/kimchi.min.js
> -%{_datadir}/kimchi/ui/js/modernizr.custom.2.6.2.min.js
> -%{_datadir}/kimchi/ui/js/spice/*.js
> -%{_datadir}/kimchi/ui/libs/jquery-ui-i18n.min.js
> -%{_datadir}/kimchi/ui/libs/jquery-ui.min.js
> -%{_datadir}/kimchi/ui/libs/jquery-1.10.0.min.js
> -%{_datadir}/kimchi/ui/libs/modernizr.custom.76777.js
> -%{_datadir}/kimchi/ui/libs/themes/base/images/*.png
> -%{_datadir}/kimchi/ui/libs/themes/base/images/*.gif
> -%{_datadir}/kimchi/ui/libs/themes/base/jquery-ui.min.css
> -%{_datadir}/kimchi/ui/pages/*.tmpl
> -%{_datadir}/kimchi/ui/pages/help/*/*.html
> -%{_datadir}/kimchi/ui/pages/help/kimchi.css
> -%{_datadir}/kimchi/ui/pages/tabs/*.html.tmpl
> -%{_datadir}/kimchi/ui/pages/websockify/*.html
> +%{_datadir}/kimchi/ui/*
>  %{_sysconfdir}/kimchi/kimchi.conf
>  %{_sysconfdir}/kimchi/nginx.conf.in
>  %{_sysconfdir}/kimchi/distros.d/debian.json
> diff --git a/contrib/kimchi.spec.suse.in b/contrib/kimchi.spec.suse.in
> index 9ea240c..2936787 100644
> --- a/contrib/kimchi.spec.suse.in
> +++ b/contrib/kimchi.spec.suse.in
> @@ -81,27 +81,7 @@ rm -rf $RPM_BUILD_ROOT
>  %{_datadir}/kimchi/doc/kimchi-templates.png
>  %{_prefix}/share/locale/*/LC_MESSAGES/kimchi.mo
>  %{_datadir}/kimchi/config/ui/*.xml
> -%{_datadir}/kimchi/ui/css/spice/spice.css
> -%{_datadir}/kimchi/ui/css/theme-default.min.css
> -%{_datadir}/kimchi/ui/images/*.png
> -%{_datadir}/kimchi/ui/images/*.ico
> -%{_datadir}/kimchi/ui/images/theme-default/*.png
> -%{_datadir}/kimchi/ui/images/theme-default/*.gif
> -%{_datadir}/kimchi/ui/js/kimchi.min.js
> -%{_datadir}/kimchi/ui/js/modernizr.custom.2.6.2.min.js
> -%{_datadir}/kimchi/ui/js/spice/*.js
> -%{_datadir}/kimchi/ui/libs/jquery-ui-i18n.min.js
> -%{_datadir}/kimchi/ui/libs/jquery-ui.min.js
> -%{_datadir}/kimchi/ui/libs/jquery-1.10.0.min.js
> -%{_datadir}/kimchi/ui/libs/modernizr.custom.76777.js
> -%{_datadir}/kimchi/ui/libs/themes/base/images/*.png
> -%{_datadir}/kimchi/ui/libs/themes/base/images/*.gif
> -%{_datadir}/kimchi/ui/libs/themes/base/jquery-ui.min.css
> -%{_datadir}/kimchi/ui/pages/*.tmpl
> -%{_datadir}/kimchi/ui/pages/help/*/*.html
> -%{_datadir}/kimchi/ui/pages/help/kimchi.css
> -%{_datadir}/kimchi/ui/pages/tabs/*.html.tmpl
> -%{_datadir}/kimchi/ui/pages/websockify/*.html
> +%{_datadir}/kimchi/ui/*

It seems "ui/*" and "ui" is the same.

>  %{_sysconfdir}/kimchi/kimchi.conf
>  %{_sysconfdir}/kimchi/nginx.conf.in
>  %{_sysconfdir}/kimchi/distros.d/debian.json
> diff --git a/ui/Makefile.am b/ui/Makefile.am
> index b5366c5..5192162 100644
> --- a/ui/Makefile.am
> +++ b/ui/Makefile.am
> @@ -15,4 +15,4 @@
>  # See the License for the specific language governing permissions and
>  # limitations under the License.
> 
> -SUBDIRS = css images js libs pages
> +SUBDIRS = css images js libs pages spice-html5
> diff --git a/ui/spice-html5/Makefile.am b/ui/spice-html5/Makefile.am
> new file mode 100644
> index 0000000..3a6558a
> --- /dev/null
> +++ b/ui/spice-html5/Makefile.am
> @@ -0,0 +1,25 @@
> +#
> +# Kimchi
> +#
> +# Copyright IBM, Corp. 2014
> +#
> +# Licensed under the Apache License, Version 2.0 (the "License");
> +# you may not use this file except in compliance with the License.
> +# You may obtain a copy of the License at
> +#
> +#     http://www.apache.org/licenses/LICENSE-2.0
> +#
> +# Unless required by applicable law or agreed to in writing, software
> +# distributed under the License is distributed on an "AS IS" BASIS,
> +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> +# See the License for the specific language governing permissions and
> +# limitations under the License.
> +
> +SUBDIRS = pages
> +
> +if WITH_SPICE
> +SUBDIRS += css thirdparty
> +
> +spicehtml5dir = $(datadir)/kimchi/ui/spice-html5
> +dist_spicehtml5_DATA = $(wildcard *.js) $(NULL)
> +endif
> diff --git a/ui/spice-html5/css/Makefile.am b/ui/spice-html5/css/Makefile.am
> new file mode 100644
> index 0000000..6106e0d
> --- /dev/null
> +++ b/ui/spice-html5/css/Makefile.am
> @@ -0,0 +1,20 @@
> +#
> +# Kimchi
> +#
> +# Copyright IBM, Corp. 2014
> +#
> +# Licensed under the Apache License, Version 2.0 (the "License");
> +# you may not use this file except in compliance with the License.
> +# You may obtain a copy of the License at
> +#
> +#     http://www.apache.org/licenses/LICENSE-2.0
> +#
> +# Unless required by applicable law or agreed to in writing, software
> +# distributed under the License is distributed on an "AS IS" BASIS,
> +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> +# See the License for the specific language governing permissions and
> +# limitations under the License.
> +
> +spicecssdir = $(datadir)/kimchi/ui/spice-html5
> +
> +dist_spicecss_DATA = $(wildcard *.css) $(NULL)
> diff --git a/ui/spice-html5/pages/Makefile.am b/ui/spice-html5/pages/Makefile.am
> new file mode 100644
> index 0000000..45e67a5
> --- /dev/null
> +++ b/ui/spice-html5/pages/Makefile.am
> @@ -0,0 +1,20 @@
> +#
> +# Kimchi
> +#
> +# Copyright IBM, Corp. 2014
> +#
> +# Licensed under the Apache License, Version 2.0 (the "License");
> +# you may not use this file except in compliance with the License.
> +# You may obtain a copy of the License at
> +#
> +#     http://www.apache.org/licenses/LICENSE-2.0
> +#
> +# Unless required by applicable law or agreed to in writing, software
> +# distributed under the License is distributed on an "AS IS" BASIS,
> +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> +# See the License for the specific language governing permissions and
> +# limitations under the License.
> +
> +spicepagesdir = $(datadir)/kimchi/ui/spice-html5/pages
> +
> +dist_spicepages_DATA = $(wildcard *.html) $(NULL)
> diff --git a/ui/spice-html5/thirdparty/Makefile.am b/ui/spice-html5/thirdparty/Makefile.am
> new file mode 100644
> index 0000000..b83a585
> --- /dev/null
> +++ b/ui/spice-html5/thirdparty/Makefile.am
> @@ -0,0 +1,20 @@
> +#
> +# Kimchi
> +#
> +# Copyright IBM, Corp. 2014
> +#
> +# Licensed under the Apache License, Version 2.0 (the "License");
> +# you may not use this file except in compliance with the License.
> +# You may obtain a copy of the License at
> +#
> +#     http://www.apache.org/licenses/LICENSE-2.0
> +#
> +# Unless required by applicable law or agreed to in writing, software
> +# distributed under the License is distributed on an "AS IS" BASIS,
> +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> +# See the License for the specific language governing permissions and
> +# limitations under the License.
> +
> +thirdpartydir = $(datadir)/kimchi/ui/spice-html5/thirdparty
> +
> +dist_thirdparty_DATA = $(wildcard *.js) $(NULL)
> 


-- 
Zhou Zheng Sheng / 周征晟
E-mail: zhshzhou at linux.vnet.ibm.com
Telephone: 86-10-82454397




More information about the Kimchi-devel mailing list