1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-02-03 11:12:13 +00:00

textproc/pugixml: Update to 1.9

This also fixes an empty version field in pugixml's pkg-config file.
Some consumers like graphics/waylandpp refuse to use the system
pugixml because of it.

- Take maintainership
- Cleanup some things that are no longer needed
- Use CMAKE_{OFF,ON} helpers

Changes:	https://pugixml.org/docs/manual.html#v1.9
ABI:		https://abi-laboratory.pro/tracker/timeline/pugixml/
PR:		234779
Approved by:	ybungalobill@gmail.com (maintainer)
This commit is contained in:
Tobias Kortkamp 2019-01-18 18:23:12 +00:00
parent 4f2130493c
commit 709bddfc45
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=490646
6 changed files with 26 additions and 48 deletions

View File

@ -1,20 +1,18 @@
# $FreeBSD$
PORTNAME= pugixml
PORTVERSION= 1.8.1
PORTREVISION= 2
PORTVERSION= 1.9
CATEGORIES= textproc
MASTER_SITES= https://github.com/zeux/pugixml/releases/download/v${PORTVERSION}/
MAINTAINER= ybungalobill@gmail.com
MAINTAINER= tobik@FreeBSD.org
COMMENT= Light-weight, simple and fast XML parser for C++ with XPath support
LICENSE= MIT
USES= cmake compiler:c++11-lang
CXXFLAGS+= -std=c++11
WRKSRC= ${WRKDIR}/${PORTNAME}-1.8
CMAKE_ARGS= -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DBUILD_TESTS=OFF -DBUILD_PKGCONFIG=ON
CMAKE_OFF= BUILD_TESTS
CMAKE_ON= BUILD_SHARED_LIBS BUILD_STATIC_LIBS BUILD_PKGCONFIG
.include <bsd.port.mk>

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1505424287
SHA256 (pugixml-1.8.1.tar.gz) = 00d974a1308e85ca0677a981adc1b2855cb060923181053fb0abf4e2f37b8f39
SIZE (pugixml-1.8.1.tar.gz) = 357846
TIMESTAMP = 1547027330
SHA256 (pugixml-1.9.tar.gz) = d156d35b83f680e40fd6412c4455fdd03544339779134617b9b28d19e11fdba6
SIZE (pugixml-1.9.tar.gz) = 377369

View File

@ -1,8 +1,8 @@
--- CMakeLists.txt.orig 2016-11-27 15:48:03.000000000 -0500
+++ CMakeLists.txt 2017-09-14 18:31:07.892853000 -0400
@@ -2,7 +2,8 @@
--- CMakeLists.txt.orig 2018-04-04 14:53:16 UTC
+++ CMakeLists.txt
@@ -2,7 +2,8 @@ cmake_minimum_required(VERSION 2.8.12)
cmake_minimum_required(VERSION 2.6)
project(pugixml)
-option(BUILD_SHARED_LIBS "Build shared instead of static library" OFF)
+option(BUILD_SHARED_LIBS "Build shared library" OFF)
@ -10,17 +10,12 @@
option(BUILD_TESTS "Build tests" OFF)
option(BUILD_PKGCONFIG "Build in PKGCONFIG mode" OFF)
@@ -38,28 +39,27 @@
@@ -38,9 +39,15 @@ endif()
if(BUILD_SHARED_LIBS)
add_library(pugixml SHARED ${SOURCES})
add_library(pugixml SHARED ${HEADERS} ${SOURCES})
-else()
- add_library(pugixml STATIC ${SOURCES})
+ set_target_properties(pugixml PROPERTIES VERSION 1.8 SOVERSION 1)
+ install(TARGETS pugixml EXPORT pugixml-config
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
- add_library(pugixml STATIC ${HEADERS} ${SOURCES})
endif()
+if(BUILD_STATIC_LIBS)
+ add_library(pugixml_static STATIC ${SOURCES})
@ -31,32 +26,17 @@
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+endif()
# Enable C++11 long long for compilers that are capable of it
if(NOT ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STRLESS 3.1 AND ";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";cxx_long_long_type;")
target_compile_features(pugixml PUBLIC cxx_long_long_type)
endif()
# Export symbols for shared library builds
if(BUILD_SHARED_LIBS AND MSVC)
@@ -54,11 +61,6 @@ endif()
-set_target_properties(pugixml PROPERTIES VERSION 1.8 SOVERSION 1)
-get_target_property(PUGIXML_VERSION_STRING pugixml VERSION)
set_target_properties(pugixml PROPERTIES VERSION 1.9 SOVERSION 1)
get_target_property(PUGIXML_VERSION_STRING pugixml VERSION)
-
-if(BUILD_PKGCONFIG)
- # Install library into its own directory under LIBDIR
- set(INSTALL_SUFFIX /pugixml-${PUGIXML_VERSION_STRING})
-endif()
-
-install(TARGETS pugixml EXPORT pugixml-config
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${INSTALL_SUFFIX}
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${INSTALL_SUFFIX}
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-install(FILES ${HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}${INSTALL_SUFFIX})
+install(FILES ${HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
install(EXPORT pugixml-config DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/pugixml)
if(BUILD_PKGCONFIG)
@@ -75,4 +75,4 @@
add_executable(check ${TEST_SOURCES})
target_link_libraries(check pugixml)
add_custom_command(TARGET check POST_BUILD COMMAND check WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
-endif()
\ No newline at end of file
+endif()
target_include_directories(pugixml PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src>

View File

@ -1,5 +1,5 @@
--- scripts/pugixml.pc.in.orig 2017-09-14 18:05:00.281262000 -0400
+++ scripts/pugixml.pc.in 2017-09-14 18:05:14.312398000 -0400
--- scripts/pugixml.pc.in.orig 2019-01-09 09:56:58 UTC
+++ scripts/pugixml.pc.in
@@ -1,11 +1,11 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}

View File

@ -1,6 +1,6 @@
--- src/pugiconfig.hpp.orig 2015-08-18 17:07:06 UTC
--- src/pugiconfig.hpp.orig 2018-04-04 14:53:16 UTC
+++ src/pugiconfig.hpp
@@ -41,7 +41,7 @@
@@ -44,7 +44,7 @@
// #define PUGIXML_HEADER_ONLY
// Uncomment this to enable long long support

View File

@ -5,5 +5,5 @@ lib/cmake/pugixml/pugixml-config.cmake
lib/libpugixml.a
lib/libpugixml.so
lib/libpugixml.so.1
lib/libpugixml.so.1.8
lib/libpugixml.so.1.9
libdata/pkgconfig/pugixml.pc