Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BitSerializer] Update to v0.50 #28564

Merged
merged 15 commits into from
Dec 30, 2022
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 15 additions & 3 deletions ports/bitserializer/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
# All components of BitSerializer is "header only" except CSV archive
if (${BUILD_CSV_ARCHIVE})
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
endif()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Flipping linkage by feature doesn't look right. If everything else is header-only, why use if at all?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was also doubt how will be right.
Thanks, fixed.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On second sight, what's the problem with the CSV lib? If it is only DLL symbol export, dynamic linkage might work well for systems other than windows, and the statement might be wrapped into if(VCPKG_TARGET_IS_WINDOWS). This pattern exists in some other ports.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In addition to export symbols on Windows, library doesn't have CMake code which support build shared library.
This is not big work, but as author, I don't see reasons to support shared linkage, the library is quite small.
If you know any cases where shared library will be useful even the library size is small, please let me know.


vcpkg_from_bitbucket(
OUT_SOURCE_PATH SOURCE_PATH
REPO Pavel_Kisliak/BitSerializer
REF 0.44
SHA512 0629acc93807254bd51d9eed761a92be4780d01604a9ae4bf8a933af70fdb206ea9b4f4db3489805b4163f5071246529ea22f8b3e7fbcd77ed936c3ab24697b2
REF 0.50
SHA512 d223e4487251e375b2f5d8b1dca9a3db3f5661c3eb308b12f019864e49d58fb0b7d45a45c3e7e232ba1d023adb1f9a3a287255099b205f57c6cade04167119d6
HEAD_REF master
)

Expand All @@ -12,17 +17,24 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
"rapidjson-archive" BUILD_RAPIDJSON_ARCHIVE
"pugixml-archive" BUILD_PUGIXML_ARCHIVE
"rapidyaml-archive" BUILD_RAPIDYAML_ARCHIVE
"csv-archive" BUILD_CSV_ARCHIVE
)

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
${FEATURE_OPTIONS}
)

vcpkg_cmake_install()
vcpkg_copy_pdbs()
vcpkg_cmake_config_fixup()
vcpkg_fixup_pkgconfig()

file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib" "${CURRENT_PACKAGES_DIR}/debug")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
if (NOT ${BUILD_CSV_ARCHIVE})
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug")
endif()

# Handle copyright
file(INSTALL "${SOURCE_PATH}/license.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
8 changes: 5 additions & 3 deletions ports/bitserializer/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
{
"name": "bitserializer",
"version": "0.44",
"port-version": 2,
"description": "C++ 17 library for serialization to JSON, XML, YAML",
"version": "0.50",
"description": "C++ 17 library for serialization to JSON, XML, YAML, CSV",
"homepage": "https://bitbucket.org/Pavel_Kisliak/bitserializer",
"license": "MIT",
"dependencies": [
Expand All @@ -22,6 +21,9 @@
"cpprestsdk"
]
},
"csv-archive": {
"description": "Module for support CSV"
},
"pugixml-archive": {
"description": "Module for support XML (implementation based on the PugiXml library)",
"dependencies": [
Expand Down
5 changes: 5 additions & 0 deletions versions/b-/bitserializer.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "66b827e44bf7536936011f4dab7649cef81162ab",
"version": "0.50",
"port-version": 0
},
{
"git-tree": "5890683ebbade2c0abbc466cd447e3f4220f49cd",
"version": "0.44",
Expand Down
4 changes: 2 additions & 2 deletions versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -497,8 +497,8 @@
"port-version": 0
},
"bitserializer": {
"baseline": "0.44",
"port-version": 2
"baseline": "0.50",
"port-version": 0
},
"bitserializer-cpprestjson": {
"baseline": "alias",
Expand Down