Skip to content

[opencv3/opencv4] Fix supports QNX#35409

Merged
BillyONeal merged 2 commits intomicrosoft:masterfrom
LilyWangLL:dev/LilyWang/issue35209
Dec 5, 2023
Merged

[opencv3/opencv4] Fix supports QNX#35409
BillyONeal merged 2 commits intomicrosoft:masterfrom
LilyWangLL:dev/LilyWang/issue35209

Conversation

@LilyWangLL
Copy link
Copy Markdown
Contributor

Fixes #35209. The upstream issue: opencv/opencv#24567

  • Changes comply with the maintainer guide
  • SHA512s are updated for each updated download
  • The "supports" clause reflects platforms that may be fixed by this new version
  • Any fixed CI baseline entries are removed from that file.
  • Any patches that are no longer applied are deleted from the port's directory.
  • The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
  • Only one version is added to each modified port's versions file.

@LilyWangLL LilyWangLL added category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist info:internal labels Nov 30, 2023
@LilyWangLL
Copy link
Copy Markdown
Contributor Author

Pinging @Arech for response. Could you please help to test this PR on your machine? I added patch as your comment for opencv3 and opencv4.

@Arech
Copy link
Copy Markdown

Arech commented Nov 30, 2023

Thanks Lily! I'll try it in the next few hours and will get back to you with the results.
I've never tried ports from a non-main branch of the vcpkg repo. Do I assume correctly, that I just need to use your latest commit hash as the repo baseline? f3a13da28514f7abfea91b36b93157b68fd46921 right? If I'm wrong may be you can point me to a guideline how to do the testing correctly?
On the surface your changes seems to be exactly what I had suggested, so I expect it to work (but I'll test!)

@Arech
Copy link
Copy Markdown

Arech commented Nov 30, 2023

erm, with that commit as a baseline, it installs previous port 4.8.0#11. It turns out that the latest commit is the second one - fc0a58d5ed897321be0759e4d4ff66f921eeca97, however, when I use it as a baseline I get "error: no version database entry for opencv4 at 4.8.0#12".
I can of course checkout it locally and use as an overlay port, but that would be not much different from my own overlay port, which I posted in the issue. So it's probably not the best option.
I've never dealt with testing vcpkg PRs, can you please suggest me, how do I do that with manifest mode?

@LilyWangLL
Copy link
Copy Markdown
Contributor Author

erm, with that commit as a baseline, it installs previous port 4.8.0#11. It turns out that the latest commit is the second one - fc0a58d5ed897321be0759e4d4ff66f921eeca97, however, when I use it as a baseline I get "error: no version database entry for opencv4 at 4.8.0#12". I can of course checkout it locally and use as an overlay port, but that would be not much different from my own overlay port, which I posted in the issue. So it's probably not the best option. I've never dealt with testing vcpkg PRs, can you please suggest me, how do I do that with manifest mode?

Thanks for your work. You could clone my repository https://github.com/LilyWangLL/vcpkg.git and switch to branch dev/LilyWang/issue35209. Then use your vcpkg.json to test this PR. Thanks in anvance.

@Arech
Copy link
Copy Markdown

Arech commented Dec 1, 2023

@LilyWangLL can confirm it finally compiles and works on QNX with my usecase

"dependencies": [
   ...,
  {
    "name": "opencv4",
    "default-features": false,
    "features": [ "jpeg", "png", "ffmpeg" ]
  },
}

Documenting the steps here for Googlers on how to test vcpkg branch, b/c there are few non-usual things:

  1. Clone the repo https://github.com/LilyWangLL/vcpkg.git, checkout the dev/LilyWang/issue35209 branch:
~/tmp/vcpkg$ git status
On branch dev/LilyWang/issue35209
Your branch is up to date with 'origin/dev/LilyWang/issue35209'.

nothing to commit, working tree clean
~/tmp/vcpkg$ git rev-parse HEAD
fc0a58d5ed897321be0759e4d4ff66f921eeca97
  1. in the vcpkg.json of the test project update the main repo and set the reference field for it:
"vcpkg-configuration": {
  "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg-configuration.schema.json",
  "default-registry": {
    "kind": "git",
    "repository": "https://github.com/LilyWangLL/vcpkg",
    "reference": "dev/LilyWang/issue35209",
    "baseline": "fc0a58d5ed897321be0759e4d4ff66f921eeca97"
  },
}
  1. Now run CMake to build the project using this cloned ~/tmp/vcpkg instance

@LilyWangLL LilyWangLL marked this pull request as ready for review December 4, 2023 02:57
@Cheney-W Cheney-W added the info:needs-maintainer-attention Lets the current 'on rotation' vcpkg maintainer know they need to look at this. label Dec 4, 2023
@BillyONeal BillyONeal merged commit c0edfbe into microsoft:master Dec 5, 2023
@BillyONeal
Copy link
Copy Markdown
Member

Thanks for the fix :)

@LilyWangLL LilyWangLL deleted the dev/LilyWang/issue35209 branch January 9, 2024 06:04
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 info:needs-maintainer-attention Lets the current 'on rotation' vcpkg maintainer know they need to look at this.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[OpenCV 4.7.0] build failure for QNX. Patch suggestion

5 participants