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

Add freeimage 3.18.0 #2672

Closed

Conversation

intelligide
Copy link
Contributor

Specify library name and version: freeimage/3.18.0

  • I've read the guidelines for contributing.
  • I've followed the PEP8 style guides for Python code in the recipes.
  • I've used the latest Conan client version.
  • I've tried at least one configuration locally with the
    conan-center hook activated.

@conan-center-bot
Copy link
Collaborator

Some configurations of 'freeimage/3.18.0' failed in build 1 (68e30b4680d69e61032fe6e3985ebfe92714b295):

@conan-center-bot
Copy link
Collaborator

Some configurations of 'freeimage/3.18.0' failed in build 2 (506b6b922a2e3e21cab2725674cb4be40989bffb):

@conan-center-bot
Copy link
Collaborator

Some configurations of 'freeimage/3.18.0' failed in build 3 (b7ed643a68e46c39d3a0135a4b09d5f427f01a0f):

@conan-center-bot
Copy link
Collaborator

Some configurations of 'freeimage/3.18.0' failed in build 4 (c3e34fd353ea38460ad8f73b60f06a239477ac75):

@intelligide intelligide reopened this Aug 27, 2020
@conan-center-bot
Copy link
Collaborator

Some configurations of 'freeimage/3.18.0' failed in build 5 (c3e34fd353ea38460ad8f73b60f06a239477ac75):

@intelligide intelligide marked this pull request as draft September 8, 2020 17:33
self.copy("license-gplv2.txt", dst="licenses", src=self._source_subfolder)

def package_info(self):
self.cpp_info.libs = tools.collect_libs(self)
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
self.cpp_info.libs = tools.collect_libs(self)
self.cpp_info.libs = ["freeimageplu", "freeimage"]

Comment on lines +95 to +96
self.cpp_info.names["cmake_find_package"] = "FreeImage"
self.cpp_info.names["cmake_find_package_multi"] = "FreeImage"
Copy link
Contributor

Choose a reason for hiding this comment

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

These names are not official, aren't they?

Suggested change
self.cpp_info.names["cmake_find_package"] = "FreeImage"
self.cpp_info.names["cmake_find_package_multi"] = "FreeImage"

Copy link
Contributor Author

Choose a reason for hiding this comment

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

That's right. I just use the most popular pattern. (Ex: https://github.com/OGRECave/ogre/blob/master/CMake/Packages/FindFreeImage.cmake)

s_plugins->AddNode(InitRAS);
s_plugins->AddNode(InitTARGA);
+#if 0
s_plugins->AddNode(InitTIFF);
Copy link
Contributor

Choose a reason for hiding this comment

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

Isn't our libtiff recipe working?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

FreeImage need a private copy of libtiff.

Copy link
Contributor

Choose a reason for hiding this comment

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

Too many modifications? Dammit.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's painful. Look at vcpkg port, It's really annoying

Copy link
Contributor

Choose a reason for hiding this comment

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

See https://sourceforge.net/p/freeimage/discussion/36111/thread/c326f1be79/
So it's unlikely that something will be done to fix this.

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 don't really know how to fix it:

  • Disabling some features and patching sources
    or
  • Using embedded deps sources

Both have huge drawbacks.

Copy link
Contributor

Choose a reason for hiding this comment

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

Okay, if you're saying that it's a lot of work to make it truly use external dependencies.

Copy link
Contributor

Choose a reason for hiding this comment

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

I think that big patches to unvendor all these deps -like in the vcpkg port- are fine. The last version of freeimage is 2.5 years old.

s_plugins->AddNode(InitGIF);
s_plugins->AddNode(InitHDR);
+#if 0
s_plugins->AddNode(InitG3);
Copy link
Contributor

Choose a reason for hiding this comment

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

What library are we missing?
Can you open an issue?

@@ -0,0 +1,155 @@
--- Source/FreeImage/J2KHelper.cpp
Copy link
Contributor

Choose a reason for hiding this comment

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

If it's not too much trouble, can you upstream this patch?
I think the biggest trouble will be modifying all makefiles to add the include paths.

return self._cmake

def build(self):
# tools.rmdir(os.path.join(self._source_subfolder, "Source", "LibJPEG"))
Copy link
Contributor

Choose a reason for hiding this comment

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

Can libjpeg be removed? You're adding libjpeg to the requires list.
Same question for the Zlib directory.

@intelligide
Copy link
Contributor Author

#3027

@stale
Copy link

stale bot commented Dec 1, 2020

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Dec 1, 2020
@stale
Copy link

stale bot commented Dec 31, 2020

This pull request has been automatically closed because it has not had recent activity. Thank you for your contributions.

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

Successfully merging this pull request may close these issues.

None yet

4 participants