# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= leatherman VERSION= 1.12.13 KEYWORDS= devel VARIANTS= standard SDESC[standard]= C++ and CMake utility libraries HOMEPAGE= https://github.com/puppetlabs/leatherman CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= GITHUB/puppetlabs:leatherman:1.12.13 DISTFILE[1]= generated:main DF_INDEX= 1 SPKGS[standard]= complete primary nls OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= boost-libraries:dev:standard BUILDRUN_DEPENDS= boost-libraries:primary:standard USES= cmake ruby gettext:build curl LICENSE= APACHE20:primary LICENSE_TERMS= primary:{{WRKSRC}}/LICENSE LICENSE_FILE= APACHE20:stock LICENSE_SCHEME= solo FPC_EQUIVALENT= devel/leatherman SOVERSION= 1.12.13 CXXFLAGS= -Wno-class-memaccess -Wno-ignored-qualifiers -Wno-catch-value CMAKE_ARGS= -DLEATHERMAN_SHARED:BOOL=ON -DENABLE_CXX_WERROR:BOOL=OFF -DLEATHERMAN_ENABLE_TESTING:BOOL=OFF -DBoost_NO_BOOST_CMAKE:BOOL=ON post-patch: ${REINPLACE_CMD} -e 's/ -Werror//' ${WRKSRC}/cmake/cflags.cmake post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so # installed by boost ${RM} -r ${STAGEDIR}${PREFIX}/include/boost [FILE:455:descriptions/desc.primary] Leatherman - a C++ toolkit Leatherman can be used in one of two ways: It can be installed as a regular library, and included using the normal CMake find_package syntax, or it can be setup as a submodule. The recommended method is to install Leatherman and use it as a regular system library. Leatherman is broken up into a number of focused component libraries. Both methods of using Leatherman allow you to control which components are built and used. [FILE:115:distinfo] 8a93175c807858e192016edf91ac95393f4a64d932fcc53983bf79cdeb52ba1d 818810 puppetlabs-leatherman-1.12.13.tar.gz [FILE:2420:manifests/plist.primary] include/leatherman/curl/ client.hpp export.h request.hpp response.hpp include/leatherman/dynamic_library/dynamic_library.hpp include/leatherman/execution/execution.hpp include/leatherman/file_util/ directory.hpp file.hpp include/leatherman/json_container/json_container.hpp include/leatherman/locale/locale.hpp include/leatherman/logging/logging.hpp include/leatherman/ruby/api.hpp include/leatherman/util/ environment.hpp option_set.hpp regex.hpp scope_exit.hpp scoped_env.hpp scoped_resource.hpp strings.hpp time.hpp timer.hpp uri.hpp include/leatherman/util/posix/scoped_descriptor.hpp include/leatherman/util/windows/scoped_handle.hpp include/leatherman/vendor/catch.hpp include/leatherman/vendor/rapidjson/ allocators.h document.h encodedstream.h encodings.h filereadstream.h filewritestream.h memorybuffer.h memorystream.h prettywriter.h rapidjson.h reader.h stringbuffer.h writer.h include/leatherman/vendor/rapidjson/error/ en.h error.h include/leatherman/vendor/rapidjson/internal/ biginteger.h diyfp.h dtoa.h ieee754.h itoa.h meta.h pow10.h stack.h strfunc.h strtod.h include/leatherman/vendor/rapidjson/msinttypes/ inttypes.h stdint.h lib/ libleatherman_curl.so libleatherman_curl.so.%%SOVERSION%% libleatherman_dynamic_library.so libleatherman_dynamic_library.so.%%SOVERSION%% libleatherman_execution.so libleatherman_execution.so.%%SOVERSION%% libleatherman_file_util.so libleatherman_file_util.so.%%SOVERSION%% libleatherman_json_container.so libleatherman_json_container.so.%%SOVERSION%% libleatherman_locale.so libleatherman_locale.so.%%SOVERSION%% libleatherman_logging.so libleatherman_logging.so.%%SOVERSION%% libleatherman_ruby.so libleatherman_ruby.so.%%SOVERSION%% libleatherman_util.so libleatherman_util.so.%%SOVERSION%% lib/cmake/leatherman/ LeathermanConfig.cmake LeathermanConfigVersion.cmake LeathermanLibraries-%%CMAKE_BUILD_TYPE%%.cmake LeathermanLibraries.cmake catch.cmake curl.cmake dynamic_library.cmake execution.cmake file_util.cmake json_container.cmake locale.cmake logging.cmake nowide.cmake rapidjson.cmake ruby.cmake util.cmake lib/cmake/leatherman/cmake/ GetGitRevisionDescription.cmake GetGitRevisionDescription.cmake.in cflags.cmake generate_translations.cmake leatherman.cmake leatherman_config.cmake normalize_pot.cmake options.cmake pod2man.cmake lib/cmake/leatherman/scripts/cpplint.py [FILE:74:manifests/plist.nls] share/locale/fr/LC_MESSAGES/ leatherman_locale.mo leatherman_logging.mo [FILE:314:patches/patch-CMakeLists.txt] --- CMakeLists.txt.orig 2024-03-01 18:47:06 UTC +++ CMakeLists.txt @@ -62,6 +62,7 @@ else() add_definitions(-DLEATHERMAN_LOCALE_INSTALL="${CMAKE_INSTALL_PREFIX}/share/locale") endif() +set(BUILD_SHARED_LIBS ON) file(GLOB_RECURSE ALL_LEATHERMAN_SOURCES */src/*.cc */inc/*.hpp) add_subdirectory(locales) [FILE:483:patches/patch-cmake_leatherman.cmake.in] --- cmake/leatherman.cmake.in.orig 2024-03-01 18:47:06 UTC +++ cmake/leatherman.cmake.in @@ -83,11 +83,6 @@ macro(leatherman_install) RUNTIME DESTINATION bin LIBRARY DESTINATION lib${LIB_SUFFIX} ARCHIVE DESTINATION lib${LIB_SUFFIX}) - foreach(ARG ${ARGV}) - if (TARGET ${ARG}) - set_target_properties(${ARG} PROPERTIES PREFIX "" IMPORT_PREFIX "") - endif() - endforeach() endmacro() # Usage: add_cppcheck_dirs(dir1 dir2) [FILE:388:patches/patch-dynamic__library_CMakeLists.txt] --- dynamic_library/CMakeLists.txt.orig 2024-03-01 18:47:06 UTC +++ dynamic_library/CMakeLists.txt @@ -9,7 +9,7 @@ leatherman_dependency(util) if(WIN32) leatherman_dependency(windows) else() - if(NOT CMAKE_SYSTEM_NAME MATCHES "FreeBSD|OpenBSD") + if(NOT CMAKE_SYSTEM_NAME MATCHES "FreeBSD|OpenBSD|NetBSD|DragonFly|MidnightBSD") add_leatherman_deps(dl) endif() endif() [FILE:542:patches/patch-json__container_tests_json__container__test.cc] --- json_container/tests/json_container_test.cc.orig 2024-03-01 18:47:06 UTC +++ json_container/tests/json_container_test.cc @@ -22,11 +22,13 @@ TEST_CASE("JsonContainer::JsonContainer std::string json_value {}; SECTION("it should instantiate by passing any JSON value") { + json_value = "{}"; SECTION("object") { json_value = JSON; } SECTION("array") { + json_value = "[]"; SECTION("of numbers") { json_value = "[1, 2, 3]"; } [FILE:472:patches/patch-locale_src_locale.cc] --- locale/src/locale.cc.orig 2024-03-01 18:47:06 UTC +++ locale/src/locale.cc @@ -44,6 +44,9 @@ namespace leatherman { namespace locale gen.add_messages_domain(domain); } + if (id.empty()) + return g_locales.insert(make_pair(domain, std::locale())).first->second; + // Ensure creating and adding a new locale is thread-safe. try { return g_locales.insert(make_pair(domain, gen(id))).first->second;