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

[bdwgc] Turn on C++, cords an threads support #21412

Merged
merged 1 commit into from
Nov 15, 2021

Conversation

ivmai
Copy link
Contributor

@ivmai ivmai commented Nov 14, 2021

  • Add -Denable_cplusplus=ON
  • Remove -Dbuild_cord=OFF
  • Remove -Denable_threads=OFF thus enabling threads
  • Add libatomic-ops to dependencies

Describe the pull request

  • What does your PR fix?

Enables C++, cords API and multi-threaded support in bdwgc package

  • Which triplets are supported/not supported? Have you updated the CI baseline?

all

Yes

  • If you have added/updated a port: Have you run ./vcpkg x-add-version --all and committed the result?

I am still working on this PR

If you are still working on the PR, open it as a Draft: https://github.blog/2019-02-14-introducing-draft-pull-requests/

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@ivmai ivmai force-pushed the bdwgc-enable-threads-2 branch from 1d5ee48 to f49b19c Compare November 14, 2021 11:48
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!

After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 12bdfc7dd2ed3171fe519bbf051e3becf7645c11 -- versions
./vcpkg x-add-version --all
Diff
diff --git a/versions/b-/bdwgc.json b/versions/b-/bdwgc.json
index 6da38d6..e7772c1 100644
--- a/versions/b-/bdwgc.json
+++ b/versions/b-/bdwgc.json
@@ -1,7 +1,7 @@
 {
   "versions": [
     {
-      "git-tree": "8ad21203921a4c8d3645f64b1c9002ed6c89bfba",
+      "git-tree": "a33cbf1d497bbb17b33b0d5784535e933de541a0",
       "version": "8.2.0",
       "port-version": 2
     },

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@ivmai ivmai force-pushed the bdwgc-enable-threads-2 branch from f49b19c to 4581620 Compare November 14, 2021 13:03
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@ivmai ivmai changed the title [bdwgc] Turn on threads support [bdwgc] Turn on C++, cords an threads support Nov 14, 2021
@ivmai ivmai force-pushed the bdwgc-enable-threads-2 branch from 4581620 to 2024db3 Compare November 14, 2021 14:20
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!

All manifest files must be formatted

./vcpkg format-manifest ports/*/vcpkg.json

Diff
diff --git a/ports/bdwgc/vcpkg.json b/ports/bdwgc/vcpkg.json
index b846697..575d697 100644
--- a/ports/bdwgc/vcpkg.json
+++ b/ports/bdwgc/vcpkg.json
@@ -4,6 +4,7 @@
   "port-version": 2,
   "description": "The Boehm-Demers-Weiser conservative C/C++ Garbage Collector (libgc, bdwgc, boehm-gc)",
   "dependencies": [
+    "libatomic-ops",
     {
       "name": "vcpkg-cmake",
       "host": true
@@ -11,7 +12,6 @@
     {
       "name": "vcpkg-cmake-config",
       "host": true
-    },
-    "libatomic-ops"
+    }
   ]
 }
After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 12bdfc7dd2ed3171fe519bbf051e3becf7645c11 -- versions
./vcpkg x-add-version --all
Diff
diff --git a/versions/b-/bdwgc.json b/versions/b-/bdwgc.json
index 1855b47..cf20cfb 100644
--- a/versions/b-/bdwgc.json
+++ b/versions/b-/bdwgc.json
@@ -1,7 +1,7 @@
 {
   "versions": [
     {
-      "git-tree": "3b2ebefb14a421b5d80f1af2b7956ca3c2bef565",
+      "git-tree": "d67e59f28c787a3abca88e09004997fe8c74d563",
       "version": "8.2.0",
       "port-version": 2
     },

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@ivmai ivmai force-pushed the bdwgc-enable-threads-2 branch from 2024db3 to 28012a9 Compare November 14, 2021 14:22
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!

All manifest files must be formatted

./vcpkg format-manifest ports/*/vcpkg.json

Diff
diff --git a/ports/bdwgc/vcpkg.json b/ports/bdwgc/vcpkg.json
index b846697..575d697 100644
--- a/ports/bdwgc/vcpkg.json
+++ b/ports/bdwgc/vcpkg.json
@@ -4,6 +4,7 @@
   "port-version": 2,
   "description": "The Boehm-Demers-Weiser conservative C/C++ Garbage Collector (libgc, bdwgc, boehm-gc)",
   "dependencies": [
+    "libatomic-ops",
     {
       "name": "vcpkg-cmake",
       "host": true
@@ -11,7 +12,6 @@
     {
       "name": "vcpkg-cmake-config",
       "host": true
-    },
-    "libatomic-ops"
+    }
   ]
 }
After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 12bdfc7dd2ed3171fe519bbf051e3becf7645c11 -- versions
./vcpkg x-add-version --all
Diff
diff --git a/versions/b-/bdwgc.json b/versions/b-/bdwgc.json
index 7fbf728..cf20cfb 100644
--- a/versions/b-/bdwgc.json
+++ b/versions/b-/bdwgc.json
@@ -1,7 +1,7 @@
 {
   "versions": [
     {
-      "git-tree": "74700ecda9b5ad05b04f5b90cdf4f95080fe0ea0",
+      "git-tree": "d67e59f28c787a3abca88e09004997fe8c74d563",
       "version": "8.2.0",
       "port-version": 2
     },

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@ivmai ivmai force-pushed the bdwgc-enable-threads-2 branch from 28012a9 to 9ad24e7 Compare November 14, 2021 14:24
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@ivmai
Copy link
Contributor Author

ivmai commented Nov 14, 2021

Hello @ras0219-msft,

  1. How to see build failure message?
  2. Most probably the build failures are caused by not found atomic_ops.h - libatomic_ops is in dependencies already, but what's the location of atomic_ops.h which is exported by libatomic_ops package?

@ivmai ivmai force-pushed the bdwgc-enable-threads-2 branch from e3aaa08 to 3e7b135 Compare November 14, 2021 19:23
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@ivmai ivmai force-pushed the bdwgc-enable-threads-2 branch from 3e7b135 to 76b0893 Compare November 14, 2021 21:19
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@PhoebeHui PhoebeHui added the category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist label Nov 15, 2021
* Remove -Dbuild_cord=OFF

* Add -Denable_cplusplus=ON

* Remove -Denable_threads=OFF thus enabling threads

* Add libatomic-ops to dependencies

* Fix 'unresolved symbol in GetModuleHandle' error (in upstream)
@ivmai ivmai force-pushed the bdwgc-enable-threads-2 branch from 76b0893 to 7ec3e85 Compare November 15, 2021 06:10
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/bdwgc/portfile.cmake

@ivmai ivmai marked this pull request as ready for review November 15, 2021 06:20
@ras0219-msft ras0219-msft merged commit b2ad081 into microsoft:master Nov 15, 2021
@ras0219-msft
Copy link
Contributor

This LGTM, thanks for the PR and improvement :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants