diff --git a/astro/libosmium/Makefile b/astro/libosmium/Makefile index 8440f0740510..4b4ebaa5fe87 100644 --- a/astro/libosmium/Makefile +++ b/astro/libosmium/Makefile @@ -1,47 +1,52 @@ PORTNAME= libosmium -PORTVERSION= 2.17.2 DISTVERSIONPREFIX= v +DISTVERSION= 2.18.0 CATEGORIES= astro geography devel MAINTAINER= amdmi3@FreeBSD.org COMMENT= Fast and flexible C++ library for working with OpenStreetMap data LICENSE= BSL LICENSE_FILE= ${WRKSRC}/LICENSE -LIB_DEPENDS= libgdal.so:graphics/gdal \ - libboost_regex.so:devel/boost-libs \ - libgeos.so:graphics/geos \ - libexpat.so:textproc/expat2 -BUILD_DEPENDS= sparsehash>=0:devel/sparsehash \ - ${LOCALBASE}/include/protozero/version.hpp:devel/protozero -RUN_DEPENDS= ${LOCALBASE}/include/protozero/version.hpp:devel/protozero +BUILD_DEPENDS= boost-libs>=0:devel/boost-libs \ + protozero>=0:devel/protozero \ + gdal>=0:graphics/gdal \ + protozero>=0:devel/protozero \ + expat>=0:textproc/expat2 \ + liblz4>=0:archivers/liblz4 \ + geos>=0:graphics/geos +# proj>=0:graphics/proj USES= cmake compiler:c++11-lib USE_GITHUB= yes GH_ACCOUNT= osmcode - -CMAKE_ARGS= -DBUILD_EXAMPLES:BOOL=OFF - -# if/when corresponding port appears in the tree, this will need to -# be turned into dependency -CMAKE_ARGS+= -DINSTALL_GDALCPP:BOOL=ON +CMAKE_ON= INSTALL_GDALCPP # until it appears as a port +CMAKE_ON+= BUILD_HEADERS +CMAKE_OFF= BUILD_EXAMPLES +CMAKE_OFF+= WITH_PROJ # the ports version is not supported # although it builds tests the library itself is header-only NO_ARCH= yes PORTDOCS= * OPTIONS_DEFINE= TEST DOCS OPTIONS_DEFAULT= TEST TEST_TEST_TARGET= test TEST_CMAKE_BOOL= BUILD_TESTING -post-extract: - @${RM} -rf ${WRKSRC}/include/utf8* +post-patch: + @${FIND} ${WRKSRC} -type f \( -name "*.cpp" -o -name "*.hpp" \) \ + -not -name "memory_mapping.hpp" \ + -not -name "test_memory_mapping.cpp" \ + -not -name "test_memory.cpp" \ + -exec ${REINPLACE_CMD} \ + -e 's,^#ifdef __linux__,#if defined(__linux__) || defined(__FreeBSD__),' \ + -e 's,^#ifndef __linux__,#if !defined(__linux__) && !defined(__FreeBSD__),' {} \; post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/CHANGELOG.md ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR} .include diff --git a/astro/libosmium/distinfo b/astro/libosmium/distinfo index c772712cfdfd..ef8ec6ea88d1 100644 --- a/astro/libosmium/distinfo +++ b/astro/libosmium/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1639744850 -SHA256 (osmcode-libosmium-v2.17.2_GH0.tar.gz) = f30e37c28f37ca3857b8107a12e6d138a0719831eca52a836692909801c8b0bd -SIZE (osmcode-libosmium-v2.17.2_GH0.tar.gz) = 569488 +TIMESTAMP = 1647270667 +SHA256 (osmcode-libosmium-v2.18.0_GH0.tar.gz) = c05a3e95c9c811521ebad8637e90f43ab8fb053b310875acce741cc4c17d6f59 +SIZE (osmcode-libosmium-v2.18.0_GH0.tar.gz) = 565862 diff --git a/astro/libosmium/files/patch-include_osmium_thread_util.hpp b/astro/libosmium/files/patch-include_osmium_thread_util.hpp new file mode 100644 index 000000000000..fd7360b76bc0 --- /dev/null +++ b/astro/libosmium/files/patch-include_osmium_thread_util.hpp @@ -0,0 +1,29 @@ +--- include/osmium/thread/util.hpp.orig 2022-02-07 12:59:17 UTC ++++ include/osmium/thread/util.hpp +@@ -38,8 +38,10 @@ DEALINGS IN THE SOFTWARE. + #include + #include + +-#ifdef __linux__ ++#if defined(__linux__) + # include ++#elif defined(__FreeBSD__) ++# include + #endif + + namespace osmium { +@@ -72,9 +74,13 @@ namespace osmium { + /** + * Set name of current thread for debugging. This only works on Linux. + */ +-#ifdef __linux__ ++#if defined(__linux__) + inline void set_thread_name(const char* name) noexcept { + prctl(PR_SET_NAME, name, 0, 0, 0); ++ } ++#elif defined(__FreeBSD__) ++ inline void set_thread_name(const char* name) noexcept { ++ pthread_setname_np(pthread_self(), name); + } + #else + inline void set_thread_name(const char*) noexcept { diff --git a/astro/libosmium/pkg-plist b/astro/libosmium/pkg-plist index c92e69e41393..6b7f4389812b 100644 --- a/astro/libosmium/pkg-plist +++ b/astro/libosmium/pkg-plist @@ -1,203 +1,200 @@ include/gdalcpp.hpp include/osmium/area/assembler.hpp include/osmium/area/assembler_config.hpp include/osmium/area/assembler_legacy.hpp include/osmium/area/detail/basic_assembler.hpp include/osmium/area/detail/basic_assembler_with_tags.hpp include/osmium/area/detail/node_ref_segment.hpp include/osmium/area/detail/proto_ring.hpp include/osmium/area/detail/segment_list.hpp include/osmium/area/detail/vector.hpp include/osmium/area/geom_assembler.hpp include/osmium/area/multipolygon_collector.hpp include/osmium/area/multipolygon_manager.hpp include/osmium/area/multipolygon_manager_legacy.hpp include/osmium/area/problem_reporter.hpp include/osmium/area/problem_reporter_exception.hpp include/osmium/area/problem_reporter_ogr.hpp include/osmium/area/problem_reporter_stream.hpp include/osmium/area/stats.hpp include/osmium/builder/attr.hpp include/osmium/builder/builder.hpp -include/osmium/builder/builder_helper.hpp include/osmium/builder/osm_object_builder.hpp include/osmium/diff_handler.hpp include/osmium/diff_iterator.hpp include/osmium/diff_visitor.hpp include/osmium/dynamic_handler.hpp include/osmium/experimental/flex_reader.hpp include/osmium/fwd.hpp include/osmium/geom/coordinates.hpp include/osmium/geom/factory.hpp include/osmium/geom/geojson.hpp include/osmium/geom/geos.hpp include/osmium/geom/haversine.hpp include/osmium/geom/mercator_projection.hpp include/osmium/geom/ogr.hpp include/osmium/geom/projection.hpp include/osmium/geom/rapid_geojson.hpp include/osmium/geom/relations.hpp include/osmium/geom/tile.hpp include/osmium/geom/util.hpp include/osmium/geom/wkb.hpp include/osmium/geom/wkt.hpp include/osmium/handler.hpp include/osmium/handler/chain.hpp include/osmium/handler/check_order.hpp include/osmium/handler/disk_store.hpp include/osmium/handler/dump.hpp include/osmium/handler/node_locations_for_ways.hpp include/osmium/handler/object_relations.hpp include/osmium/index/bool_vector.hpp include/osmium/index/detail/create_map_with_fd.hpp include/osmium/index/detail/mmap_vector_anon.hpp include/osmium/index/detail/mmap_vector_base.hpp include/osmium/index/detail/mmap_vector_file.hpp include/osmium/index/detail/tmpfile.hpp include/osmium/index/detail/vector_map.hpp include/osmium/index/detail/vector_multimap.hpp include/osmium/index/id_set.hpp include/osmium/index/index.hpp include/osmium/index/map.hpp include/osmium/index/map/all.hpp include/osmium/index/map/dense_file_array.hpp include/osmium/index/map/dense_mem_array.hpp include/osmium/index/map/dense_mmap_array.hpp include/osmium/index/map/dummy.hpp include/osmium/index/map/flex_mem.hpp include/osmium/index/map/sparse_file_array.hpp include/osmium/index/map/sparse_mem_array.hpp include/osmium/index/map/sparse_mem_map.hpp -include/osmium/index/map/sparse_mem_table.hpp include/osmium/index/map/sparse_mmap_array.hpp include/osmium/index/multimap.hpp include/osmium/index/multimap/all.hpp include/osmium/index/multimap/hybrid.hpp include/osmium/index/multimap/sparse_file_array.hpp include/osmium/index/multimap/sparse_mem_array.hpp include/osmium/index/multimap/sparse_mem_multimap.hpp include/osmium/index/multimap/sparse_mmap_array.hpp include/osmium/index/node_locations_map.hpp include/osmium/index/nwr_array.hpp include/osmium/index/relations_map.hpp include/osmium/io/any_compression.hpp include/osmium/io/any_input.hpp include/osmium/io/any_output.hpp include/osmium/io/bzip2_compression.hpp include/osmium/io/compression.hpp include/osmium/io/debug_output.hpp include/osmium/io/detail/debug_output_format.hpp include/osmium/io/detail/ids_output_format.hpp include/osmium/io/detail/input_format.hpp include/osmium/io/detail/lz4.hpp include/osmium/io/detail/o5m_input_format.hpp include/osmium/io/detail/opl_input_format.hpp include/osmium/io/detail/opl_output_format.hpp include/osmium/io/detail/opl_parser_functions.hpp include/osmium/io/detail/output_format.hpp include/osmium/io/detail/pbf.hpp include/osmium/io/detail/pbf_decoder.hpp include/osmium/io/detail/pbf_input_format.hpp include/osmium/io/detail/pbf_output_format.hpp include/osmium/io/detail/protobuf_tags.hpp include/osmium/io/detail/queue_util.hpp include/osmium/io/detail/read_thread.hpp include/osmium/io/detail/read_write.hpp include/osmium/io/detail/string_table.hpp include/osmium/io/detail/string_util.hpp include/osmium/io/detail/write_thread.hpp include/osmium/io/detail/xml_input_format.hpp include/osmium/io/detail/xml_output_format.hpp include/osmium/io/detail/zlib.hpp include/osmium/io/error.hpp include/osmium/io/file.hpp include/osmium/io/file_compression.hpp include/osmium/io/file_format.hpp include/osmium/io/gzip_compression.hpp include/osmium/io/header.hpp include/osmium/io/ids_output.hpp include/osmium/io/input_iterator.hpp include/osmium/io/o5m_input.hpp include/osmium/io/opl_input.hpp include/osmium/io/opl_output.hpp include/osmium/io/output_iterator.hpp include/osmium/io/overwrite.hpp include/osmium/io/pbf.hpp include/osmium/io/pbf_input.hpp include/osmium/io/pbf_output.hpp include/osmium/io/reader.hpp include/osmium/io/reader_iterator.hpp include/osmium/io/reader_with_progress_bar.hpp include/osmium/io/writer.hpp include/osmium/io/writer_options.hpp include/osmium/io/xml_input.hpp include/osmium/io/xml_output.hpp include/osmium/memory/buffer.hpp include/osmium/memory/callback_buffer.hpp include/osmium/memory/collection.hpp include/osmium/memory/item.hpp include/osmium/memory/item_iterator.hpp include/osmium/object_pointer_collection.hpp include/osmium/opl.hpp include/osmium/osm.hpp include/osmium/osm/area.hpp include/osmium/osm/box.hpp include/osmium/osm/changeset.hpp include/osmium/osm/crc.hpp include/osmium/osm/crc_zlib.hpp include/osmium/osm/diff_object.hpp include/osmium/osm/entity.hpp include/osmium/osm/entity_bits.hpp include/osmium/osm/item_type.hpp include/osmium/osm/location.hpp include/osmium/osm/metadata_options.hpp include/osmium/osm/node.hpp include/osmium/osm/node_ref.hpp include/osmium/osm/node_ref_list.hpp include/osmium/osm/object.hpp include/osmium/osm/object_comparisons.hpp include/osmium/osm/relation.hpp include/osmium/osm/segment.hpp include/osmium/osm/tag.hpp include/osmium/osm/timestamp.hpp include/osmium/osm/types.hpp include/osmium/osm/types_from_string.hpp include/osmium/osm/undirected_segment.hpp include/osmium/osm/way.hpp include/osmium/relations/collector.hpp include/osmium/relations/detail/member_meta.hpp include/osmium/relations/detail/relation_meta.hpp include/osmium/relations/manager_util.hpp include/osmium/relations/members_database.hpp include/osmium/relations/relations_database.hpp include/osmium/relations/relations_manager.hpp include/osmium/storage/item_stash.hpp include/osmium/tags/filter.hpp include/osmium/tags/matcher.hpp include/osmium/tags/regex_filter.hpp include/osmium/tags/taglist.hpp include/osmium/tags/tags_filter.hpp include/osmium/thread/function_wrapper.hpp include/osmium/thread/pool.hpp include/osmium/thread/queue.hpp include/osmium/thread/util.hpp -include/osmium/util/cast.hpp include/osmium/util/compatibility.hpp include/osmium/util/config.hpp include/osmium/util/delta.hpp include/osmium/util/double.hpp include/osmium/util/endian.hpp include/osmium/util/file.hpp include/osmium/util/iterator.hpp include/osmium/util/memory.hpp include/osmium/util/memory_mapping.hpp include/osmium/util/minmax.hpp include/osmium/util/misc.hpp include/osmium/util/options.hpp include/osmium/util/progress_bar.hpp include/osmium/util/string.hpp include/osmium/util/string_matcher.hpp include/osmium/util/timer.hpp include/osmium/util/verbose_output.hpp include/osmium/version.hpp include/osmium/visitor.hpp