[meta-virtualization] [meta-cloud-services][PATCH] ruby.bbclass: move to base layer
Bruce Ashfield
bruce.ashfield at gmail.com
Wed Sep 16 13:08:17 PDT 2015
merged.
Bruce
On Tue, Sep 15, 2015 at 9:47 AM, Mark Asselstine
<mark.asselstine at windriver.com> wrote:
> In commit 1aa30310259027ebb87ee95ef914ca3de55d6a09 [puppet: move to
> base layer] we made puppet available to all sub-layers but since we
> didn't move the required ruby.bbclass we couldn't actually use it
> without using meta-openstack. Complete the move by moving the
> ruby.bbclass to the base layer. At some point I think we still want to
> remove ruby.bbclass from meta-cloud-services completely and use
> meta-ruby, but we will do that at another time.
>
> Signed-off-by: Mark Asselstine <mark.asselstine at windriver.com>
> ---
> classes/ruby.bbclass | 131 ++++++++++++++++++++++++++++++++++++
> meta-openstack/classes/ruby.bbclass | 131 ------------------------------------
> 2 files changed, 131 insertions(+), 131 deletions(-)
> create mode 100644 classes/ruby.bbclass
> delete mode 100644 meta-openstack/classes/ruby.bbclass
>
> diff --git a/classes/ruby.bbclass b/classes/ruby.bbclass
> new file mode 100644
> index 0000000..0c842d5
> --- /dev/null
> +++ b/classes/ruby.bbclass
> @@ -0,0 +1,131 @@
> +#
> +# Copyright (C) 2014 Wind River Systems, Inc.
> +#
> +DEPENDS += " \
> + ruby-native \
> +"
> +RDEPENDS_${PN} += " \
> + ruby \
> +"
> +
> +#${PN}_do_compile[depends] += "ruby-native:do_populate_sysroot"
> +
> +def get_rubyversion(p):
> + import re
> + from os.path import isfile
> + import subprocess
> + found_version = "SOMETHING FAILED!"
> +
> + cmd = "%s/ruby" % p
> +
> + if not isfile(cmd):
> + return found_version
> +
> + version = subprocess.Popen([cmd, "--version"], stdout=subprocess.PIPE).communicate()[0]
> +
> + r = re.compile("ruby ([0-9]+\.[0-9]+\.[0-9]+)*")
> + m = r.match(version)
> + if m:
> + found_version = m.group(1)
> +
> + return found_version
> +
> +def get_rubygemslocation(p):
> + import re
> + from os.path import isfile
> + import subprocess
> + found_loc = "SOMETHING FAILED!"
> +
> + cmd = "%s/gem" % p
> +
> + if not isfile(cmd):
> + return found_loc
> +
> + loc = subprocess.Popen([cmd, "env"], stdout=subprocess.PIPE).communicate()[0]
> +
> + r = re.compile(".*\- (/usr.*/ruby/gems/.*)")
> + for line in loc.split('\n'):
> + m = r.match(line)
> + if m:
> + found_loc = m.group(1)
> + break
> +
> + return found_loc
> +
> +def get_rubygemsversion(p):
> + import re
> + from os.path import isfile
> + import subprocess
> + found_version = "SOMETHING FAILED!"
> +
> + cmd = "%s/gem" % p
> +
> + if not isfile(cmd):
> + return found_version
> +
> + version = subprocess.Popen([cmd, "env", "gemdir"], stdout=subprocess.PIPE).communicate()[0]
> +
> + r = re.compile(".*([0-9]+\.[0-9]+\.[0-9]+)$")
> + m = r.match(version)
> + if m:
> + found_version = m.group(1)
> +
> + return found_version
> +
> +RUBY_VERSION ?= "${@get_rubyversion("${STAGING_BINDIR_NATIVE}")}"
> +RUBY_GEM_DIRECTORY ?= "${@get_rubygemslocation("${STAGING_BINDIR_NATIVE}")}"
> +RUBY_GEM_VERSION ?= "${@get_rubygemsversion("${STAGING_BINDIR_NATIVE}")}"
> +
> +export GEM_HOME = "${STAGING_DIR_NATIVE}/usr/lib/ruby/gems/${RUBY_GEM_VERSION}"
> +
> +RUBY_BUILD_GEMS ?= "${BPN}.gemspec"
> +RUBY_INSTALL_GEMS ?= "${BPN}-${BPV}.gem"
> +
> +RUBY_COMPILE_FLAGS ?= 'LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8"'
> +
> +ruby_do_compile() {
> + for gem in ${RUBY_BUILD_GEMS}; do
> + ${RUBY_COMPILE_FLAGS} gem build $gem
> + done
> +}
> +
> +
> +ruby_do_install() {
> + for gem in ${RUBY_INSTALL_GEMS}; do
> + gem install --ignore-dependencies --local --env-shebang --install-dir ${D}/${libdir}/ruby/gems/${RUBY_GEM_VERSION}/ $gem
> + done
> +
> + # create symlink from the gems bin directory to /usr/bin
> + for i in ${D}/${libdir}/ruby/gems/${RUBY_GEM_VERSION}/bin/*; do
> + if [ -e "$i" ]; then
> + if [ ! -d ${D}/${bindir} ]; then mkdir -p ${D}/${bindir}; fi
> + b=`basename $i`
> + ln -sf ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/bin/$b ${D}/${bindir}/$b
> + fi
> + done
> +}
> +
> +EXPORT_FUNCTIONS do_compile do_install
> +
> +PACKAGES = "${PN}-dbg ${PN} ${PN}-doc ${PN}-dev"
> +
> +FILES_${PN}-dbg += " \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems/*/*/.debug \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems/*/*/*/.debug \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems/*/*/*/*/.debug \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems/*/*/*/*/*/.debug \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/extensions/*/*/*/*/*/.debug \
> + "
> +
> +FILES_${PN} += " \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/cache \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/bin \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/specifications \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/build_info \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/extensions \
> + "
> +
> +FILES_${PN}-doc += " \
> + ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/doc \
> + "
> diff --git a/meta-openstack/classes/ruby.bbclass b/meta-openstack/classes/ruby.bbclass
> deleted file mode 100644
> index 0c842d5..0000000
> --- a/meta-openstack/classes/ruby.bbclass
> +++ /dev/null
> @@ -1,131 +0,0 @@
> -#
> -# Copyright (C) 2014 Wind River Systems, Inc.
> -#
> -DEPENDS += " \
> - ruby-native \
> -"
> -RDEPENDS_${PN} += " \
> - ruby \
> -"
> -
> -#${PN}_do_compile[depends] += "ruby-native:do_populate_sysroot"
> -
> -def get_rubyversion(p):
> - import re
> - from os.path import isfile
> - import subprocess
> - found_version = "SOMETHING FAILED!"
> -
> - cmd = "%s/ruby" % p
> -
> - if not isfile(cmd):
> - return found_version
> -
> - version = subprocess.Popen([cmd, "--version"], stdout=subprocess.PIPE).communicate()[0]
> -
> - r = re.compile("ruby ([0-9]+\.[0-9]+\.[0-9]+)*")
> - m = r.match(version)
> - if m:
> - found_version = m.group(1)
> -
> - return found_version
> -
> -def get_rubygemslocation(p):
> - import re
> - from os.path import isfile
> - import subprocess
> - found_loc = "SOMETHING FAILED!"
> -
> - cmd = "%s/gem" % p
> -
> - if not isfile(cmd):
> - return found_loc
> -
> - loc = subprocess.Popen([cmd, "env"], stdout=subprocess.PIPE).communicate()[0]
> -
> - r = re.compile(".*\- (/usr.*/ruby/gems/.*)")
> - for line in loc.split('\n'):
> - m = r.match(line)
> - if m:
> - found_loc = m.group(1)
> - break
> -
> - return found_loc
> -
> -def get_rubygemsversion(p):
> - import re
> - from os.path import isfile
> - import subprocess
> - found_version = "SOMETHING FAILED!"
> -
> - cmd = "%s/gem" % p
> -
> - if not isfile(cmd):
> - return found_version
> -
> - version = subprocess.Popen([cmd, "env", "gemdir"], stdout=subprocess.PIPE).communicate()[0]
> -
> - r = re.compile(".*([0-9]+\.[0-9]+\.[0-9]+)$")
> - m = r.match(version)
> - if m:
> - found_version = m.group(1)
> -
> - return found_version
> -
> -RUBY_VERSION ?= "${@get_rubyversion("${STAGING_BINDIR_NATIVE}")}"
> -RUBY_GEM_DIRECTORY ?= "${@get_rubygemslocation("${STAGING_BINDIR_NATIVE}")}"
> -RUBY_GEM_VERSION ?= "${@get_rubygemsversion("${STAGING_BINDIR_NATIVE}")}"
> -
> -export GEM_HOME = "${STAGING_DIR_NATIVE}/usr/lib/ruby/gems/${RUBY_GEM_VERSION}"
> -
> -RUBY_BUILD_GEMS ?= "${BPN}.gemspec"
> -RUBY_INSTALL_GEMS ?= "${BPN}-${BPV}.gem"
> -
> -RUBY_COMPILE_FLAGS ?= 'LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8"'
> -
> -ruby_do_compile() {
> - for gem in ${RUBY_BUILD_GEMS}; do
> - ${RUBY_COMPILE_FLAGS} gem build $gem
> - done
> -}
> -
> -
> -ruby_do_install() {
> - for gem in ${RUBY_INSTALL_GEMS}; do
> - gem install --ignore-dependencies --local --env-shebang --install-dir ${D}/${libdir}/ruby/gems/${RUBY_GEM_VERSION}/ $gem
> - done
> -
> - # create symlink from the gems bin directory to /usr/bin
> - for i in ${D}/${libdir}/ruby/gems/${RUBY_GEM_VERSION}/bin/*; do
> - if [ -e "$i" ]; then
> - if [ ! -d ${D}/${bindir} ]; then mkdir -p ${D}/${bindir}; fi
> - b=`basename $i`
> - ln -sf ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/bin/$b ${D}/${bindir}/$b
> - fi
> - done
> -}
> -
> -EXPORT_FUNCTIONS do_compile do_install
> -
> -PACKAGES = "${PN}-dbg ${PN} ${PN}-doc ${PN}-dev"
> -
> -FILES_${PN}-dbg += " \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems/*/*/.debug \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems/*/*/*/.debug \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems/*/*/*/*/.debug \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems/*/*/*/*/*/.debug \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/extensions/*/*/*/*/*/.debug \
> - "
> -
> -FILES_${PN} += " \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/gems \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/cache \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/bin \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/specifications \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/build_info \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/extensions \
> - "
> -
> -FILES_${PN}-doc += " \
> - ${libdir}/ruby/gems/${RUBY_GEM_VERSION}/doc \
> - "
> --
> 2.1.4
>
> --
> _______________________________________________
> meta-virtualization mailing list
> meta-virtualization at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-virtualization
--
"Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end"
More information about the meta-virtualization
mailing list