This makes building libselinux and libsemanage more robust on systems with several versions of Ruby installed: when building, only RUBY needs to be set, without wondering about PKG_CONFIG_PATH or other environment variables. Using RbConfig::CONFIG["rubyarchhdrdir"] only works with Ruby >= 2.0 but since previous Ruby versions are retired since 2015-02-23 this should not have any impact (https://www.ruby-lang.org/en/news/2015/02/23/support-for-ruby-1-9-3-has-ended/). While at it, in libsemanage, use RbConfig::CONFIG["vendorarchdir"] to install the Ruby extension, like commit 1cd80faa53b6 ("libselinux: versioned ruby pkg-config and query vendorarchdir properly") did for libselinux. My main motivation with this patch is to make the build configuration easier to define on Travis-CI or other continuous integration platforms. Signed-off-by: Nicolas Iooss <nicolas.iooss@xxxxxxx> --- libselinux/src/Makefile | 3 +-- libsemanage/src/Makefile | 6 ++---- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/libselinux/src/Makefile b/libselinux/src/Makefile index 76efe49586c0..4fe1f7002181 100644 --- a/libselinux/src/Makefile +++ b/libselinux/src/Makefile @@ -14,8 +14,7 @@ SHLIBDIR ?= $(DESTDIR)/lib INCLUDEDIR ?= $(PREFIX)/include PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) PYSITEDIR ?= $(DESTDIR)$(shell $(PYTHON) -c 'import site; print(site.getsitepackages()[0])') -RUBYLIBVER ?= $(shell $(RUBY) -e 'print RUBY_VERSION.split(".")[0..1].join(".")') -RUBYINC ?= $(shell $(PKG_CONFIG) --exists ruby-$(RUBYLIBVER) && $(PKG_CONFIG) --cflags ruby-$(RUBYLIBVER) || $(PKG_CONFIG) --cflags ruby) +RUBYINC ?= $(shell $(RUBY) -e 'puts "-I" + RbConfig::CONFIG["rubyarchhdrdir"] + " -I" + RbConfig::CONFIG["rubyhdrdir"]') RUBYINSTALL ?= $(DESTDIR)$(shell $(RUBY) -e 'puts RbConfig::CONFIG["vendorarchdir"]') LIBBASE ?= $(shell basename $(LIBDIR)) LIBSEPOLA ?= $(LIBDIR)/libsepol.a diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile index cd29a8abf5ab..c646f274cbc1 100644 --- a/libsemanage/src/Makefile +++ b/libsemanage/src/Makefile @@ -15,10 +15,8 @@ INCLUDEDIR ?= $(PREFIX)/include PYLIBVER ?= $(shell $(PYTHON) -c 'import sys;print("python%d.%d" % sys.version_info[0:2])') PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) PYLIBDIR ?= $(LIBDIR)/$(PYLIBVER) -RUBYLIBVER ?= $(shell $(RUBY) -e 'print RUBY_VERSION.split(".")[0..1].join(".")') -RUBYPLATFORM ?= $(shell $(RUBY) -e 'print RUBY_PLATFORM') -RUBYINC ?= $(shell $(PKG_CONFIG) --cflags ruby-$(RUBYLIBVER)) -RUBYINSTALL ?= $(LIBDIR)/ruby/site_ruby/$(RUBYLIBVER)/$(RUBYPLATFORM) +RUBYINC ?= $(shell $(RUBY) -e 'puts "-I" + RbConfig::CONFIG["rubyarchhdrdir"] + " -I" + RbConfig::CONFIG["rubyhdrdir"]') +RUBYINSTALL ?= $(DESTDIR)$(shell $(RUBY) -e 'puts RbConfig::CONFIG["vendorarchdir"]') LIBBASE=$(shell basename $(LIBDIR)) -- 2.10.2 _______________________________________________ Selinux mailing list Selinux@xxxxxxxxxxxxx To unsubscribe, send email to Selinux-leave@xxxxxxxxxxxxx. To get help, send an email containing "help" to Selinux-request@xxxxxxxxxxxxx.