new port: sysutils/facter

Facter is Puppet's cross-platform system profiling library.

While former versions (sysutils/rubygem-facter) were written in Ruby, this
version is written in C++11. FreeBSD support in the upstream sources is
sparse and DragonFly is not supported at all for the moment.

WWW: https://puppetlabs.com/facter

Reviewed by:	mat
Differential Revision:	https://reviews.freebsd.org/D3579
This commit is contained in:
Michael Moll 2015-09-11 10:51:31 +00:00
parent 333ff881f6
commit 2f008f486a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=396656
9 changed files with 101 additions and 1 deletions

1
MOVED
View File

@ -4139,7 +4139,6 @@ net-mgmt/zabbix-frontend|net-mgmt/zabbix2-frontend|2013-03-15|Has expired: no lo
net-mgmt/zabbix-proxy|net-mgmt/zabbix2-proxy|2013-03-15|Has expired: no longer supported by upstream
net-mgmt/zabbix-server|net-mgmt/zabbix2-server|2013-03-15|Has expired: no longer supported by upstream
dns/h2n||2013-03-17|Removed: legally questionable and obsolete
sysutils/facter|sysutils/rubygem-facter|2013-03-17|Renamed to match naming convention for rubygems
french/gibi||2013-03-18|Removed: IGNORE for more than 6 months
finance/pfpro||2013-03-18|Removed: upstream no longer exists
finance/p5-PFProAPI||2013-03-18|Removed: upstream no longer exists

View File

@ -245,6 +245,7 @@
SUBDIR += extipl
SUBDIR += ezjail
SUBDIR += f3
SUBDIR += facter
SUBDIR += fanout
SUBDIR += farbot
SUBDIR += fastest_cvsup

32
sysutils/facter/Makefile Normal file
View File

@ -0,0 +1,32 @@
# $FreeBSD$
PORTNAME= facter
PORTVERSION= 3.0.2
CATEGORIES= sysutils
MASTER_SITES= http://downloads.puppetlabs.com/facter/
MAINTAINER= mmoll@FreeBSD.org
COMMENT= Cross-platform Ruby library for retrieving facts from OS
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libboost_system.so:${PORTSDIR}/devel/boost-libs \
libyaml-cpp.so:${PORTSDIR}/devel/yaml-cpp
USE_LDCONFIG= yes
USE_RUBY= yes
USES= cmake compiler:c++11-lib
CMAKE_ARGS+= -DMAN_PATH=${MANPREFIX}/man
CONFLICTS_INSTALL= rubygem-facter-2*
BROKEN_DragonFly= DragonFly is not supported upstream
.include <bsd.port.pre.mk>
.if ${OPSYS} == FreeBSD && ${COMPILER_FEATURES:Mlibstdc++}
BROKEN= Build with system libstdc++ is unsupported
.endif
.include <bsd.port.post.mk>

2
sysutils/facter/distinfo Normal file
View File

@ -0,0 +1,2 @@
SHA256 (facter-3.0.2.tar.gz) = 2fee1ee938196790f24b7b876ff04a5d69c0ac1492ff6935b003ae23500eced7
SIZE (facter-3.0.2.tar.gz) = 508583

View File

@ -0,0 +1,8 @@
--- CMakeLists.txt.orig 2015-07-23 12:50:51 UTC
+++ CMakeLists.txt
@@ -169,4 +169,4 @@ endif()
add_test(NAME "facter\\ smoke" COMMAND facter)
# Install the man page
-install(FILES ${PROJECT_SOURCE_DIR}/man/man8/facter.8 DESTINATION share/man/man8/)
+install(FILES ${PROJECT_SOURCE_DIR}/man/man8/facter.8 DESTINATION man/man8/)

View File

@ -0,0 +1,11 @@
--- lib/CMakeLists.txt.orig 2015-07-21 17:31:28 UTC
+++ lib/CMakeLists.txt
@@ -115,7 +115,7 @@ if (UNIX)
set(LIBFACTER_STANDARD_SOURCES ${LIBFACTER_STANDARD_SOURCES} "src/util/posix/scoped_bio.cc")
endif()
- set(POSIX_LIBRARIES pthread dl)
+ set(POSIX_LIBRARIES pthread)
endif()
if (WIN32)

View File

@ -0,0 +1,10 @@
--- vendor/leatherman/cmake/cflags.cmake.orig 2015-07-21 17:31:29 UTC
+++ vendor/leatherman/cmake/cflags.cmake
@@ -21,6 +21,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL
else()
set(LEATHERMAN_CXX_FLAGS "${LEATHERMAN_CXX_FLAGS} -Wno-deprecated")
endif()
+ set(LEATHERMAN_LIBRARY_FLAGS "-fPIC")
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
# maybe-uninitialized is a relatively new GCC warning that Boost 1.57 violates; disable it for now until it's available in Clang as well
# it's also sometimes wrong

View File

@ -0,0 +1,6 @@
Facter is Puppet's cross-platform system profiling library.
It discovers and reports per-node facts, which are
available in your Puppet manifests as variables.
WWW: https://puppetlabs.com/facter

31
sysutils/facter/pkg-plist Normal file
View File

@ -0,0 +1,31 @@
bin/facter
include/facter/execution/execution.hpp
include/facter/export.h
include/facter/facts/array_value.hpp
include/facter/facts/collection.hpp
include/facter/facts/external/resolver.hpp
include/facter/facts/fact.hpp
include/facter/facts/map_value.hpp
include/facter/facts/os.hpp
include/facter/facts/os_family.hpp
include/facter/facts/resolver.hpp
include/facter/facts/scalar_value.hpp
include/facter/facts/value.hpp
include/facter/facts/vm.hpp
include/facter/http/client.hpp
include/facter/http/request.hpp
include/facter/http/response.hpp
include/facter/logging/logging.hpp
include/facter/ruby/ruby.hpp
include/facter/util/directory.hpp
include/facter/util/environment.hpp
include/facter/util/file.hpp
include/facter/util/option_set.hpp
include/facter/util/scope_exit.hpp
include/facter/util/scoped_resource.hpp
include/facter/util/string.hpp
include/facter/version.h
lib/libfacter.so
lib/libfacter.so.3.0.2
lib/ruby/vendor_ruby/facter.rb
man/man8/facter.8.gz