File: ac_ruby_gem.m4

package info (click to toggle)
pcs 0.12.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 16,148 kB
  • sloc: python: 238,810; xml: 20,833; ruby: 13,203; makefile: 1,595; sh: 484
file content (40 lines) | stat: -rw-r--r-- 1,399 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
dnl @synopsis AC_RUBY_GEM(gem[, version][, action-if-found][, action-if-not-found][, gemhome])
dnl
dnl Checks for Ruby gem.
dnl
dnl @category InstalledPackages
dnl @author Fabio M. Di Nitto <fdinitto@redhat.com>.
dnl @version 2020-11-23
dnl @license AllPermissive

AC_DEFUN([AC_RUBY_GEM],[
	module="$1"
	reqversion="$2"
	AC_MSG_CHECKING([ruby gem: $module])
	if test -n "$5"; then
		gemoutput=$(GEM_HOME=$5 $GEM list --local | grep "^$module " 2>/dev/null)
	else
		gemoutput=$($GEM list --local | grep "^$module " 2>/dev/null)
	fi
	if test "x$gemoutput" != "x"; then
		curversionlist=$(echo $gemoutput | sed -e 's#.*(##g' -e 's#)##'g -e 's#default: ##g' | tr ',' ' ')
		curversion=0.0.0
		for version in $curversionlist; do
			AC_COMPARE_VERSIONS([$curversion], [lt], [$version], [curversion=$version],)
		done
		if test "x$reqversion" != x; then
			comp=$(echo $reqversion | cut -d " " -f 1)
			tmpversion=$(echo $reqversion | cut -d " " -f 2)
			AC_COMPARE_VERSIONS([$curversion], [$comp], [$tmpversion],, [AC_MSG_ERROR([ruby gem $module version $curversion detected. Requested "$comp $tmpversion"])])
		fi
		AC_MSG_RESULT([yes (detected: $curversion)])
		eval AS_TR_CPP(HAVE_RUBYGEM_$module)=yes
		eval AS_TR_CPP(HAVE_RUBYGEM_${module}_version)=$curversion
		$3
	else
		AC_MSG_RESULT([no])
		eval AS_TR_CPP(HAVE_RUBYGEM_$module)=no
		eval AS_TR_CPP(HAVE_RUBYGEM_${module}_version)=""
		$4
	fi
])