[Bug 233426] sysutils/facter: [patch] Build fails when devel/rapidjson is installed
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Fri Nov 23 04:26:56 UTC 2018
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233426
Bug ID: 233426
Summary: sysutils/facter: [patch] Build fails when
devel/rapidjson is installed
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: Individual Port(s)
Assignee: ports-bugs at FreeBSD.org
Reporter: vladislav.movchan at gmail.com
CC: puppet at FreeBSD.org, yuri at freebsd.org
CC: puppet at FreeBSD.org, yuri at freebsd.org
Created attachment 199470
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=199470&action=edit
Use /usr/local/include/leatherman/vendor before /usr/local/include
Build of sysutils/facter fails when devel/rapidjson is installed in the system.
Command which fails and error message:
```
cd /usr/ports/sysutils/facter/work/facter-3.12.1/lib && /usr/bin/c++
-DBOOST_ALL_DYN_LINK -DBOOST_LOG_WITHOUT_WCHAR_T -DBOOST_SYSTEM_NO_DEPRECATED
-DLEATHERMAN_I18N -DLEATHERMAN_LOGGING_NAMESPACE=\"puppetlabs.facter\"
-DLEATHERMAN_USE_LOCALES
-DPROJECT_DIR=\"/usr/ports/sysutils/facter/work/facter-3.12.1\"
-DPROJECT_NAME=\"FACTER\" -DUSE_CPPHOCON -DUSE_JRUBY_SUPPORT -DUSE_OPENSSL
-DUSE_YAMLCPP -Dlibfacter_EXPORTS
-I/usr/ports/sysutils/facter/work/facter-3.12.1/lib/inc
-I/usr/ports/sysutils/facter/work/facter-3.12.1/../vendor/nowide/include
-I/usr/local/openjdk8/include -I/usr/local/openjdk8/include/freebsd
-I/usr/local/include -I/usr/local/include/leatherman/vendor
-Wno-deprecated-register -std=c++11 -Wall -Wextra -Wno-unused-parameter
-Wno-tautological-constant-out-of-range-compare -O2 -pipe -O2 -pipe
-march=haswell -fstack-protector -fno-strict-aliasing -O2 -pipe -O2 -pipe
-march=haswell -fstack-protector -fno-strict-aliasing -fPIC -o
CMakeFiles/libfactersrc.dir/src/facts/resolver.cc.o -c
/usr/ports/sysutils/facter/work/facter-3.12.1/lib/src/facts/resolver.cc
--- lib/CMakeFiles/libfactersrc.dir/src/facts/external/json_resolver.cc.o ---
In file included from
/usr/ports/sysutils/facter/work/facter-3.12.1/lib/src/facts/external/json_resolver.cc:9:
/usr/local/include/rapidjson/reader.h:1340:32: error: no member named
'RawNumber' in 'facter::facts::external::json_event_handler'
cont = handler.RawNumber(str, SizeType(length), false);
~~~~~~~ ^
/usr/local/include/rapidjson/reader.h:1401:23: note: in instantiation of
function template specialization
'rapidjson::GenericReader<rapidjson::UTF8<char>, rapidjson::UTF8<char>,
rapidjson::CrtAllocator>::ParseNumber<0, rapidjson::FileReadStream,
facter::facts::external::json_event_handler>' requested here
ParseNumber<parseFlags>(is, handler);
^
/usr/local/include/rapidjson/reader.h:501:13: note: in instantiation of
function template specialization
'rapidjson::GenericReader<rapidjson::UTF8<char>, rapidjson::UTF8<char>,
rapidjson::CrtAllocator>::ParseValue<0, rapidjson::FileReadStream,
facter::facts::external::json_event_handler>' requested here
ParseValue<parseFlags>(is, handler);
^
/usr/local/include/rapidjson/reader.h:527:16: note: in instantiation of
function template specialization
'rapidjson::GenericReader<rapidjson::UTF8<char>, rapidjson::UTF8<char>,
rapidjson::CrtAllocator>::Parse<0, rapidjson::FileReadStream,
facter::facts::external::json_event_handler>' requested here
return Parse<kParseDefaultFlags>(is, handler);
^
/usr/ports/sysutils/facter/work/facter-3.12.1/lib/src/facts/external/json_resolver.cc:211:30:
note: in instantiation of function template specialization
'rapidjson::GenericReader<rapidjson::UTF8<char>, rapidjson::UTF8<char>,
rapidjson::CrtAllocator>::Parse<rapidjson::FileReadStream,
facter::facts::external::json_event_handler>' requested here
auto result = reader.Parse(stream, handler);
^
1 error generated.
*** [lib/CMakeFiles/libfactersrc.dir/src/facts/external/json_resolver.cc.o]
Error code 1
```
It is possible to see that -I/usr/local/include has been put before
-I/usr/local/include/leatherman/vendor
As the result /usr/local/include/rapidjson/reader.h is included instead of
/usr/local/include/leatherman/vendor/rapidjson/reader.h
Attached patch fixes this problem by moving
-I/usr/local/include/leatherman/vendor in front of -I/usr/local/include
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-ports-bugs
mailing list