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

[libiconv] Fix arm64-ios build #42111

Merged
merged 4 commits into from
Nov 29, 2024
Merged

[libiconv] Fix arm64-ios build #42111

merged 4 commits into from
Nov 29, 2024

Conversation

cosmin42
Copy link
Contributor

Fixes the arm64-ios build.

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

Original issue:
#36182

Original fix: https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=2d1edb0bd8035200d09ba4bd6d0161f37e0ee1f4

@cosmin42
Copy link
Contributor Author

@microsoft-github-policy-service agree

@Mengna-Li Mengna-Li added the category:port-bug The issue is with a library, which is something the port should already support label Nov 12, 2024
@cosmin42
Copy link
Contributor Author

@Mengna-Li Kind reminder to review this, thank you!

@BillyONeal
Copy link
Member

BillyONeal commented Nov 28, 2024

@Mengna-Li Kind reminder to review this, thank you!

I'm pretty sure nobody was looking to review it because the build was red. I think I fixed it.

@BillyONeal BillyONeal added the info:reviewed Pull Request changes follow basic guidelines label Nov 28, 2024
@BillyONeal BillyONeal enabled auto-merge (squash) November 28, 2024 01:11
@BillyONeal BillyONeal merged commit cd124b8 into microsoft:master Nov 29, 2024
17 checks passed
@davidbien
Copy link

davidbien commented Nov 29, 2024

ok, fresh install on my new mac mini!!!

For whatever reason the new patch 0005-iOS-missing-symbol-fix.patch isn't getting applied during the install so it fails

Command: vcpkg install --triplet arm64-ios

Installing 1/12 libiconv:arm64-ios@1.17#3...
Building libiconv:arm64-ios@1.17#3...
/Users/davidbien/devenv/vcpkg/triplets/community/arm64-ios.cmake: info: loaded community triplet from here. Community triplets are not built in the curated registry and are thus less likely to succeed.
/Users/davidbien/devenv/vcpkg/buildtrees/versioning_/versions/libiconv/0d6e7ebdbfeca59f047e66f632d1d38c2659fc14: info: installing overlay port from here
-- Using cached libiconv-1.17.tar.gz.
-- Cleaning sources at /Users/davidbien/devenv/vcpkg/buildtrees/libiconv/src/v1.17-84a471678e.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /Users/davidbien/devenv/vcpkg/downloads/libiconv-1.17.tar.gz
-- Applying patch 0002-Config-for-MSVC.patch
-- Applying patch 0003-Add-export.patch
-- Applying patch 0004-ModuleFileName.patch
-- Applying patch clang-fortify.patch
-- Using source at /Users/davidbien/devenv/vcpkg/buildtrees/libiconv/src/v1.17-84a471678e.clean
-- Getting CMake variables for arm64-ios-dbg
-- Getting CMake variables for arm64-ios-rel
-- Configuring arm64-ios-dbg
-- Configuring arm64-ios-rel
-- Building arm64-ios-dbg
-- Installing arm64-ios-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
Command failed: /usr/bin/make -j 11 -f Makefile install DESTDIR=/Users/davidbien/devenv/vcpkg/packages/libiconv_arm64-ios
Working Directory: /Users/davidbien/devenv/vcpkg/buildtrees/libiconv/arm64-ios-dbg/
See logs for more information:
/Users/davidbien/devenv/vcpkg/buildtrees/libiconv/install-arm64-ios-dbg-out.log
/Users/davidbien/devenv/vcpkg/buildtrees/libiconv/install-arm64-ios-dbg-err.log

Call Stack (most recent call first):
scripts/cmake/vcpkg_build_make.cmake:153 (vcpkg_execute_build_process)
scripts/cmake/vcpkg_install_make.cmake:2 (vcpkg_build_make)
buildtrees/versioning_/versions/libiconv/0d6e7ebdbfeca59f047e66f632d1d38c2659fc14/portfile.cmake:39 (vcpkg_install_make)
scripts/ports.cmake:196 (include)

If I use cosmin42's change directly via overlay, however, the build succeeds...

vcpkg install --triplet arm64-ios --overlay-ports=/Users/davidbien/dv/vcpkg-cosmin42/ports/libiconv

But then the boost-locale build fails.

A good test would be if both libiconv succeeds and then something depending on libiconv (like boost-locale) also succeeds.

UPDATE: If I set the current version forward to @1.17#5 then building libiconv succeeds but build boost-locale still fails.

{
"name": "libiconv",
"version>=": "1.17#5"
}

Installing 1/1 boost-locale:arm64-ios@1.84.0...
Building boost-locale:arm64-ios@1.84.0...
/Users/davidbien/devenv/vcpkg/triplets/community/arm64-ios.cmake: info: loaded community triplet from here. Community triplets are not built in the curated registry and are thus less likely to succeed.
/Users/davidbien/devenv/vcpkg/buildtrees/versioning_/versions/boost-locale/890a580576001c650e84c6b92fd995a048317e3e: info: installing overlay port from here
Downloading boostorg-locale-boost-1.84.0.tar.gz
Successfully downloaded boostorg-locale-boost-1.84.0.tar.gz.
-- Extracting source /Users/davidbien/devenv/vcpkg/downloads/boostorg-locale-boost-1.84.0.tar.gz
-- Applying patch fix-dependencies.patch
-- Using source at /Users/davidbien/devenv/vcpkg/buildtrees/boost-locale/src/ost-1.84.0-c35c322caf.clean
-- Including /Users/davidbien/devenv/vcpkg/buildtrees/boost-locale/vcpkg-b2-options.cmake
-- Getting CMake variables for arm64-ios
-- Configuring arm64-ios
-- Building arm64-ios-dbg
-- Building arm64-ios-rel
CMake Error at /Users/davidbien/dv/sdo1/Sodorkyou/vcpkg_installed/arm64-osx/share/boost-build/boost-modular-build.cmake:196 (message):
No libraries were produced. This indicates a failure while building the
boost library.
Call Stack (most recent call first):
buildtrees/versioning_/versions/boost-locale/890a580576001c650e84c6b92fd995a048317e3e/portfile.cmake:23 (boost_modular_build)
scripts/ports.cmake:196 (include)

@dg0yt
Copy link
Contributor

dg0yt commented Nov 29, 2024

Consider updating builtin-baseline.

@davidbien
Copy link

davidbien commented Nov 30, 2024

THANK YOU!!! lol - I had a feeling I was "doing it wrong" but baselines never caused an issue I guess cuz all my other stuff just worked all the time without mucking with them - had no idea what they were even for TBH.
Yah, it works - nice - allows me to use tesseract in my ios app as well - this is very cool.
I didn't have a builtin-baseline, btw, but a default registry with a baseline in vcpkg-configuration.json. It's unclear to me how that baseline even got there - during development I would want my packages to remain up-to-date and therefore wouldn't want a specific baseline. After release I might want a baseline that I might manage. I didn't put the baseline in the vspkg-configuration.json - and now that I am wise to the ways of baselines I'll manage them appropriately. Thanks again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-bug The issue is with a library, which is something the port should already support info:reviewed Pull Request changes follow basic guidelines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants