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

thorvg: add recipe #22746

Merged
merged 16 commits into from
Apr 25, 2024
Merged

thorvg: add recipe #22746

merged 16 commits into from
Apr 25, 2024

Conversation

toge
Copy link
Contributor

@toge toge commented Feb 11, 2024

Specify library name and version: thorvg/*


@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@toge
Copy link
Contributor Author

toge commented Feb 12, 2024

@RubenRBS
Would you please assist me as I don't have many recipes that I can refer to regarding meson?
I seem to get an error with the following code when I specify a BACKEND to MensonToolchain.

meson = Meson(self)
meson.install()

The error is as follows.

... \src\meson.build:1:0: ERROR: Tried modify read only option 'backend'

Is there a problem with the way my conanfile.py is written and is there a workaround?

@AbrilRBS AbrilRBS self-assigned this Feb 12, 2024
@AbrilRBS
Copy link
Member

Hi @toge, I've pinged @franramirez688 which is more faimiliar than I am with Meson to take a look into this, thanks for the contribution as always, let's see what they find about your error :)

@toge
Copy link
Contributor Author

toge commented Feb 12, 2024

@RubenRBS
Thanks a lot!

@danimtb
Copy link
Member

danimtb commented Feb 15, 2024

@toge FYI, I was having a look at this with @franramirez688 and we found a bug for the backend='vs' in Meson during the install step in package() method. We will report it upstream to get it fixed in new releases.

Meanwhile, we realized that using backend='vs2022' worked without issue, so let's try that in the recipe for now 😄 Thank you!

@franramirez688
Copy link
Contributor

@toge FYI, I was having a look at this with @franramirez688 and we found a bug for the backend='vs' in Meson during the install step in package() method. We will report it upstream to get it fixed in new releases.

Meanwhile, we realized that using backend='vs2022' worked without issue, so let's try that in the recipe for now 😄 Thank you!

mesonbuild/meson#12868 cc @toge @RubenRBS @danimtb

@toge
Copy link
Contributor Author

toge commented Feb 16, 2024

@danimtb
Thanks a lot!
I will try to fix it.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@franramirez688
Copy link
Contributor

Hi @toge

I've been working on this conan-io/conan#15706
That PR is removing the reconfigure process, so we shouldn't have any problem keeping the original vs backend. I think we can wait for it and try this PR again using Conan's latest version.

@toge
Copy link
Contributor Author

toge commented Mar 1, 2024

@franramirez688
Thank you for information!
I'm waiting for it.

@franramirez688 franramirez688 self-assigned this Mar 25, 2024
@conan-center-bot

This comment has been minimized.

Copy link
Contributor

@franramirez688 franramirez688 left a comment

Choose a reason for hiding this comment

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

Minor suggestions, otherwise, it looks great.

recipes/thorvg/all/conanfile.py Outdated Show resolved Hide resolved
recipes/thorvg/all/conanfile.py Outdated Show resolved Hide resolved
franramirez688
franramirez688 previously approved these changes Apr 9, 2024
@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@toge
Copy link
Contributor Author

toge commented Apr 9, 2024

@franramirez688
Thank you for your review and updating this PR!
I am waiting for updating conan 1.64.0 in CCI.

@conan-center-bot

This comment has been minimized.

@franramirez688
Copy link
Contributor

Hi @toge

I just reverted my latest commit as it did not take any effect. This error is happening on Windows:

[settings]
arch=x86_64
build_type=Release
compiler=msvc
compiler.cppstd=14
compiler.runtime=dynamic
compiler.runtime_type=Release
compiler.version=192
os=Windows
[options]
*/*:shared=False

....

  Checking Build System
  Building Custom Rule C:/J/workspace/prod-v2/bsr@2/cci-c46d93c1/recipes/thorvg/all/test_package/CMakeLists.txt
  test_package.cpp
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: enum tvg::Result __cdecl tvg::Fill::colorStops(struct tvg::Fill::ColorStop const *,unsigned int)" (__imp_?colorStops@Fill@tvg@@QEAA?AW4Result@2@PEBUColorStop@12@I@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual enum tvg::Result __cdecl tvg::Canvas::push(class std::unique_ptr<class tvg::Paint,struct std::default_delete<class tvg::Paint> >)" (__imp_?push@Canvas@tvg@@UEAA?AW4Result@2@V?$unique_ptr@VPaint@tvg@@U?$default_delete@VPaint@tvg@@@std@@@std@@@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual __cdecl tvg::RadialGradient::~RadialGradient(void)" (__imp_??1RadialGradient@tvg@@UEAA@XZ) referenced in function "public: virtual void * __cdecl tvg::RadialGradient::`scalar deleting destructor'(unsigned int)" (??_GRadialGradient@tvg@@UEAAPEAXI@Z) [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: enum tvg::Result __cdecl tvg::RadialGradient::radial(float,float,float)" (__imp_?radial@RadialGradient@tvg@@QEAA?AW4Result@2@MMM@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class std::unique_ptr<class tvg::RadialGradient,struct std::default_delete<class tvg::RadialGradient> > __cdecl tvg::RadialGradient::gen(void)" (__imp_?gen@RadialGradient@tvg@@SA?AV?$unique_ptr@VRadialGradient@tvg@@U?$default_delete@VRadialGradient@tvg@@@std@@@std@@XZ) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual __cdecl tvg::Shape::~Shape(void)" (__imp_??1Shape@tvg@@UEAA@XZ) referenced in function "public: virtual void * __cdecl tvg::Shape::`scalar deleting destructor'(unsigned int)" (??_GShape@tvg@@UEAAPEAXI@Z) [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: enum tvg::Result __cdecl tvg::Shape::appendRect(float,float,float,float,float,float)" (__imp_?appendRect@Shape@tvg@@QEAA?AW4Result@2@MMMMMM@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: enum tvg::Result __cdecl tvg::Shape::appendCircle(float,float,float,float)" (__imp_?appendCircle@Shape@tvg@@QEAA?AW4Result@2@MMMM@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: enum tvg::Result __cdecl tvg::Shape::fill(unsigned char,unsigned char,unsigned char,unsigned char)" (__imp_?fill@Shape@tvg@@QEAA?AW4Result@2@EEEE@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: enum tvg::Result __cdecl tvg::Shape::fill(class std::unique_ptr<class tvg::Fill,struct std::default_delete<class tvg::Fill> >)" (__imp_?fill@Shape@tvg@@QEAA?AW4Result@2@V?$unique_ptr@VFill@tvg@@U?$default_delete@VFill@tvg@@@std@@@std@@@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class std::unique_ptr<class tvg::Shape,struct std::default_delete<class tvg::Shape> > __cdecl tvg::Shape::gen(void)" (__imp_?gen@Shape@tvg@@SA?AV?$unique_ptr@VShape@tvg@@U?$default_delete@VShape@tvg@@@std@@@std@@XZ) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual __cdecl tvg::SwCanvas::~SwCanvas(void)" (__imp_??1SwCanvas@tvg@@UEAA@XZ) referenced in function "public: virtual void * __cdecl tvg::SwCanvas::`scalar deleting destructor'(unsigned int)" (??_GSwCanvas@tvg@@UEAAPEAXI@Z) [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: enum tvg::Result __cdecl tvg::SwCanvas::target(unsigned int *,unsigned int,unsigned int,unsigned int,enum tvg::SwCanvas::Colorspace)" (__imp_?target@SwCanvas@tvg@@QEAA?AW4Result@2@PEAIIIIW4Colorspace@12@@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class std::unique_ptr<class tvg::SwCanvas,struct std::default_delete<class tvg::SwCanvas> > __cdecl tvg::SwCanvas::gen(void)" (__imp_?gen@SwCanvas@tvg@@SA?AV?$unique_ptr@VSwCanvas@tvg@@U?$default_delete@VSwCanvas@tvg@@@std@@@std@@XZ) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
test_package.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static enum tvg::Result __cdecl tvg::Initializer::init(enum tvg::CanvasEngine,unsigned int)" (__imp_?init@Initializer@tvg@@SA?AW4Result@2@W4CanvasEngine@2@I@Z) referenced in function main [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]
C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\Release\test_package.exe : fatal error LNK1120: 15 unresolved externals [C:\J\workspace\prod-v2\bsr@2\cci-c46d93c1\recipes\thorvg\all\test_package\build\msvc-192-x86_64-14-release\test_package.vcxproj]

@conan-center-bot

This comment has been minimized.

@franramirez688 franramirez688 self-requested a review April 10, 2024 07:00
@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

Copy link
Contributor

Hooks produced the following warnings for commit 2616d63
thorvg/0.13.0@#dcfdc293bd602ef0f43221db8ac66c6d
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libthorvg.so' links to system library 'm' but it is not in cpp_info.system_libs.

@conan-center-bot
Copy link
Collaborator

Conan v1 pipeline ✔️

All green in build 19 (24847743f43a392e801ec52a2e7536bd921747ad):

  • thorvg/0.13.0:
    All packages built successfully! (All logs)

Conan v2 pipeline ✔️

Note: Conan v2 builds are now mandatory. Please read our discussion about it.

All green in build 17 (24847743f43a392e801ec52a2e7536bd921747ad):

  • thorvg/0.13.0:
    All packages built successfully! (All logs)

@conan-center-bot conan-center-bot merged commit 8b46db5 into conan-io:master Apr 25, 2024
13 checks passed
@toge
Copy link
Contributor Author

toge commented Apr 25, 2024

@franramirez688
Thanks a lot for lots of improvements!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants