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

libpng: fix cross-build to iOS arm + cache cmake + modernize #6285

Merged
merged 18 commits into from
Jul 13, 2021

Conversation

SpaceIm
Copy link
Contributor

@SpaceIm SpaceIm commented Jul 12, 2021

Specify library name and version: lib/1.0

closes #2366


  • 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.

cmake.definitions["CMAKE_SYSTEM_PROCESSOR"] = "aarch64"
cmake.configure()
return cmake
self._cmake.definitions["PNG_BUILD_ZLIB"] = "ON"
Copy link
Contributor

Choose a reason for hiding this comment

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

Does this mean a vendored zlib is built by libpng when building for emscripten?

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 guess yes

Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link
Contributor Author

@SpaceIm SpaceIm Jul 12, 2021

Choose a reason for hiding this comment

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

yes, maybe there was an issue with Emscripten in conan long time ago.
It's the same thing for M_LIBRARY, it's useless to force empty value, it is overridden by upstream anyway.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

removed in 2ebb94f

Copy link
Contributor

Choose a reason for hiding this comment

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

There is a pr on cci for emscripten at #6163
Once it gets merged, some recipes should be tested with it.

@conan-center-bot
Copy link
Collaborator

All green in build 4 (2ebb94fc64a3e849d0e7d491eb95c748f8ee22b6):

  • libpng/1.6.37@:
    All packages built successfully! (All logs)

Copy link
Contributor

@jgsogo jgsogo left a comment

Choose a reason for hiding this comment

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

@madebr
Copy link
Contributor

madebr commented Jul 12, 2021

All holes are covered now. 😝

Copy link
Contributor

@prince-chrismc prince-chrismc left a comment

Choose a reason for hiding this comment

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

Declined ✖️

self._cmake.definitions["PNG_DEBUG"] = self.settings.build_type == "Debug"
if tools.is_apple_os(self.settings.os):
if "arm" in self.settings.arch:
# FIXME: Neon should work on iOS (but currently if leads to undefined symbols), see if autotools build is better
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
# FIXME: Neon should work on iOS (but currently if leads to undefined symbols), see if autotools build is better
# FIXME: Neon should work on iOS (but currently it leads to undefined symbols), see if autotools build is better

Copy link
Contributor Author

Choose a reason for hiding this comment

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

yes I saw that after pushing the last commit, but was too lazy to fix the typo 😩

@conan-center-bot conan-center-bot merged commit aa97078 into conan-io:master Jul 13, 2021
@SpaceIm SpaceIm deleted the fix/libpng-ios-arm branch July 13, 2021 07:51
AndreyMlashkin pushed a commit to AndreyMlashkin/conan-center-index that referenced this pull request Jul 19, 2021
…dernize

* fix undefined symbols in iOS arm builds

when NEON is enable for iOS builds, there are missing symbols in generated lib

* cleanup imports

* no os.rename

* reorder methods

* conventions

* cache cmake

* declare patch files in conandata.yml

* use find_package() in test_package

* cleanup

* use pure C test package

* explicit pkg_config name

* remove useless patch in .pc file

we don't package this file in CCI

* consistent quotes

* empty string api_prefix default value

* debug output for Debug build_type only

* use boolean for CMake options

* add comment about iOS build and Neon

* remove Emscripten specific stuff
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.

[package] libpng/1.6.37: iOS build
6 participants