[arch-commits] Commit in facter/trunk (3 files)
Thore Bödecker
foxxx0 at archlinux.org
Mon Aug 12 13:18:55 UTC 2019
Date: Monday, August 12, 2019 @ 13:18:55
Author: foxxx0
Revision: 499022
upgpkg: facter 3.14.2-1
update to 3.14.2 with various fixes and improvements
Added:
facter/trunk/FindUDEV.cmake
facter/trunk/fix-shared-libwhereami-detection.patch
Modified:
facter/trunk/PKGBUILD
----------------------------------------+
FindUDEV.cmake | 79 +++++++++++++++++++++++++++++++
PKGBUILD | 75 ++++++++++++++++++++---------
fix-shared-libwhereami-detection.patch | 13 +++++
3 files changed, 145 insertions(+), 22 deletions(-)
Added: FindUDEV.cmake
===================================================================
--- FindUDEV.cmake (rev 0)
+++ FindUDEV.cmake 2019-08-12 13:18:55 UTC (rev 499022)
@@ -0,0 +1,79 @@
+##
+# based on https://github.com/rpavlik/cmake-modules/blob/master/Findudev.cmake
+##
+# - try to find the udev library
+#
+# Cache Variables: (probably not for direct use in your scripts)
+# UDEV_INCLUDE_DIR
+# UDEV_SOURCE_DIR
+# UDEV_LIBRARY
+#
+# Non-cache variables you might use in your CMakeLists.txt:
+# UDEV_FOUND
+# UDEV_INCLUDE_DIRS
+# UDEV_LIBRARIES
+#
+# Requires these CMake modules:
+# FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
+#
+# Original Author:
+# 2014 Kevin M. Godby <kevin at godby.org>
+#
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or copy at
+# http://www.boost.org/LICENSE_1_0.txt)
+
+set(UDEV_ROOT_DIR
+ "${UDEV_ROOT_DIR}"
+ CACHE
+ PATH
+ "Directory to search for udev")
+
+find_package(PkgConfig QUIET)
+if(PKG_CONFIG_FOUND)
+ pkg_check_modules(PC_LIBUDEV libudev)
+endif()
+
+find_library(UDEV_LIBRARY
+ NAMES
+ udev
+ PATHS
+ ${PC_LIBUDEV_LIBRARY_DIRS}
+ ${PC_LIBUDEV_LIBDIR}
+ HINTS
+ "${UDEV_ROOT_DIR}"
+ PATH_SUFFIXES
+ lib
+ )
+
+get_filename_component(_libdir "${UDEV_LIBRARY}" PATH)
+
+find_path(UDEV_INCLUDE_DIR
+ NAMES
+ libudev.h
+ PATHS
+ ${PC_LIBUDEV_INCLUDE_DIRS}
+ ${PC_LIBUDEV_INCLUDEDIR}
+ HINTS
+ "${_libdir}"
+ "${_libdir}/.."
+ "${UDEV_ROOT_DIR}"
+ PATH_SUFFIXES
+ include
+ )
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(UDEV
+ DEFAULT_MSG
+ UDEV_LIBRARY
+ UDEV_INCLUDE_DIR
+ )
+
+if(UDEV_FOUND)
+ list(APPEND UDEV_LIBRARIES ${UDEV_LIBRARY})
+ list(APPEND UDEV_INCLUDE_DIRS ${UDEV_INCLUDE_DIR})
+ mark_as_advanced(UDEV_ROOT_DIR)
+endif()
+
+mark_as_advanced(UDEV_INCLUDE_DIR
+ UDEV_LIBRARY)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2019-08-12 12:22:27 UTC (rev 499021)
+++ PKGBUILD 2019-08-12 13:18:55 UTC (rev 499022)
@@ -1,4 +1,6 @@
# Maintainer: Christian Rebischke <chris.rebischke at archlinux.org>
+# Maintainer: Thore Bödecker <foxxx0 at archlinux.org>
+# Contributor: Tim Meusel <tim at bastelfreak.de>
# Contributor: Jonathan Steel <jsteel at archlinux.org>
# Contributor: Greg Sutcliffe <facter_aur (at) emeraldreverie.orgr>
# Contributor: Hyacinthe Cartiaux <hyacinthe.cartiaux at free.fr>
@@ -7,45 +9,74 @@
# Contributor: Niels Abspoel <aboe76 (at) Gmail (dot) com>
pkgname=facter
-pkgver=3.13.1
-pkgrel=3
+pkgver=3.14.2
+pkgrel=1
pkgdesc="Collect and display system facts"
arch=('x86_64')
url="https://puppetlabs.com/facter"
license=('APACHE')
-depends=('yaml-cpp' 'boost-libs' 'curl')
-makedepends=('ruby' 'boost' 'cmake' 'java-environment>=10' 'leatherman' 'cpp-hocon' 'java-environment-common')
-optdepends=('java-environment: jruby support')
+depends=('yaml-cpp' 'boost-libs' 'curl' 'libwhereami')
+makedepends=('boost' 'boost-libs' 'cmake' 'java-environment>=10' 'leatherman'
+ 'cpp-hocon' 'java-environment-common' 'ruby' 'python'
+ 'libudev0-shim' 'libwhereami')
+checkdepends=('ruby-bundler' 'ruby-rake' 'ruby-rspec' 'ruby-mocha')
+optdepends=('java-environment: jruby support'
+ 'puppet: retrieve puppet facts')
replaces=('cfacter')
-source=("https://github.com/puppetlabs/facter/archive/${pkgver}.tar.gz"
- 'java10.patch')
-sha512sums=('22d65d3c7eeedc674b99dcba1503bcecdc268abda0f25e6e209f1c3560dc8077b13fc5a6bbb8de1b45f2b7f5d1f2dfec8aa4fe20461a1b1d6a1a65674f570e56'
- '0db7f0a636bb31850b4440b3e7acc273cefc4091bd177ffaeb51434f80b142b9a96730d2a31a6ef48bf94dbd1cb21943a18e4f329a75b87718efd06a7124260b')
+source=("https://downloads.puppet.com/facter/facter-${pkgver}.tar.gz"{,.asc}
+ 'FindUDEV.cmake'
+ 'fix-shared-libwhereami-detection.patch')
+validpgpkeys=('6F6B15509CF8E59E6E469F327F438280EF8D349F') # "Puppet, Inc. Release Key (Puppet, Inc. Release Key) <release at puppet.com>"
+sha512sums=('e8f0b8b509c5d5ea1d7f2c3a0a7ff36d25aa55001237cc9cdc96eafcd59da845eb2a01a8ac334c2376a1692e80862dc575a551340a03d7ae02d6f32e5215a3ec'
+ 'SKIP'
+ 'c06f8b75a697c89c696729aaca88d30cf4d8652406245d457d97a0de973f6129a037e226847e71785070dc16d5b40b98f287258f961da7904cf5338eb601fc09'
+ '1f5d2595cd6b2a63fc01c92c84eccf8f92bd9e9f0721ea1a3f59836d7d02f5ec6e6e3711b223b240d46ca55f7377f27339b7458c12d6c21564a2764c76df12b2')
prepare() {
- cd "${pkgname}-${pkgver}"
+ cd "${srcdir}/${pkgname}-${pkgver}"
- # Replace rb_data_object_alloc symbol with rb_data_object_wrap
- # https://tickets.puppetlabs.com/browse/FACT-1291
- sed -i 's/rb_data_object_alloc/rb_data_object_wrap/g' \
- $( grep -rl rb_data_object_alloc lib/src/ruby )
+ # Puppet builds Facter in a way that the java library is compatible with Java 6
+ # We require at least Java 8. 7 technically works, but already throws a deprecation warning
+ sed --in-place 's/-source 1.6 -target 1.6/-source 1.8 -target 1.8/' CMakeLists.txt
+
+ # https://tickets.puppetlabs.com/browse/FACT-1968
+ # facter is designed for ruby 2.4, which uses rb_data_object_alloc.
+ # This is deprecated in our Ruby 2.6 version
+ sed --in-place 's/rb_data_object_alloc/rb_data_object_wrap/g' lib/src/ruby/*.cc
+
+ # strip version boundary of gems
+ sed -i -r 's|(gem .\w+.).*|\1|' lib/Gemfile
+
+ # add missing cmake helper to find the udev lib (provided by systemd)
+ install -Dm644 "${srcdir}/FindUDEV.cmake" cmake/
+
+ # patch FindWHEREAMI.cmake so that it works with the shared lib
+ patch -p1 -N -i "${srcdir}/fix-shared-libwhereami-detection.patch"
}
build() {
- cd "${pkgname}-${pkgver}"
+ cd "${srcdir}/${pkgname}-${pkgver}"
- # Do not treat warnings as errors
- CXXFLAGS+=' -Wno-error'
+ mkdir build
+ cd build
- JAVA_HOME=/usr/lib/jvm/default cmake -DCMAKE_INSTALL_PREFIX=/usr
-
+ export JAVA_HOME=/usr/lib/jvm/default
+ cmake \
+ -DCMAKE_INSTALL_PREFIX:PATH=/usr \
+ -DENABLE_CXX_WERROR=OFF \
+ ..
make
}
+check(){
+ cd "${srcdir}/${pkgname}-${pkgver}/build"
+ make test
+}
+
package() {
- cd "${pkgname}-${pkgver}"
+ cd "${srcdir}/${pkgname}-${pkgver}/build"
- make install DESTDIR="${pkgdir}"
+ make DESTDIR="${pkgdir}" install
- install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/"${pkgname}"/LICENSE
+ install -Dm644 ../LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
Added: fix-shared-libwhereami-detection.patch
===================================================================
--- fix-shared-libwhereami-detection.patch (rev 0)
+++ fix-shared-libwhereami-detection.patch 2019-08-12 13:18:55 UTC (rev 499022)
@@ -0,0 +1,13 @@
+diff -upr a/cmake/FindWHEREAMI.cmake b/cmake/FindWHEREAMI.cmake
+--- a/cmake/FindWHEREAMI.cmake 2019-07-19 10:11:10.000000000 +0200
++++ b/cmake/FindWHEREAMI.cmake 2019-08-12 14:49:04.730902701 +0200
+@@ -1,6 +1,6 @@
+ include(FindDependency)
+-find_dependency(WHEREAMI DISPLAY "whereami" HEADERS "whereami/whereami.hpp" LIBRARIES "libwhereami.a")
++find_dependency(WHEREAMI DISPLAY "whereami" HEADERS "whereami/whereami.hpp" LIBRARIES "libwhereami.so")
+
+ include(FeatureSummary)
+ set_package_properties(WHEREAMI PROPERTIES DESCRIPTION "A hypervisor detection library" URL "https://github.com/puppetlabs/libwhereami")
+-set_package_properties(WHEREAMI PROPERTIES PURPOSE "Reports hypervisors in use.")
+\ No newline at end of file
++set_package_properties(WHEREAMI PROPERTIES PURPOSE "Reports hypervisors in use.")
More information about the arch-commits
mailing list