Repository navigation
Conversation
|
How does your iconv pointer fix compare to Apple's upstream ? |
| cd .. | ||
| cd gettext-tools | ||
| pushd ../gettext-runtime | ||
| env PATH=../bin:%b/localtree/bin:$PATH ./configure %c |
There was a problem hiding this comment.
Do we need to make sure in this ./configure call that no utils from %p are used (SED, AWK, GREP, etc), like we do with the other subdirectories (libtextstyle and gettext-tools) ?
There was a problem hiding this comment.
I copied this from the existing call for gettext-tools (below), which did not set any of the ac_cv_path_*, no idea if it would be required for safety there or in the new gettext-runtime build. Normally there should be no pre-existing %p in a bootstrap, but I take your point that those paths could still be left over from an existing Fink installation.
| #!/bin/sh -ev | ||
| cd gettext-tools | ||
| LC_ALL=C /usr/bin/make -w -k check || echo "Checking for expected failures in test suites" | ||
| grep ^FAIL */test-suite.log | egrep -v 'lang-perl-1|lang-perl-2' && exit 2 |
There was a problem hiding this comment.
Is there any chance that system-egrep (BSD) may behave differently from fink-egrep (GNU) ? If so, egrep here should be /usr/bin/egrep.
There was a problem hiding this comment.
I don't see any difference either in the manpages or my experience – the regex is of the most basic type, and -v is also one of the fundamental options.
They are using Tested bootstrap now on 15.1, too, and 14.6, which indeed has 5.34 as |
|
I believe (but not certain) 14.x had perl5.30 earlier and now it has 5.34 Both at least are in /usr/bin now. |
|
dpkg doesn't need to have its internal gettext bumped? |
|
Building into an installed tree for comparison, libintl.8.dylib has bumped its compatibility version to 13.0.0 with %v=0.22.5 |
|
Good catch, forgot the bootstrap builds are all run without --validate. |
The one in fink-distributions? Would probably make sense for consistency, but I have never installed that over the bootstrapped one – as it is still at 1.10.21 vs. 1.19.7, it would almost definitely not build on any arm64 system. |
|
Oops about the dpkg note. I had forgotten that new dpkg no longer has an internal gettext. I've created a PR for the same updates to fink-distributions. |
| # 12.0/13.0 system-perl is 5.30.3, but the only supplied | ||
| # interpreter is /usr/bin/perl5.30 (not perl5.30.3) | ||
| $perlcmd = "/usr/bin/arch -%m perl5.30"; | ||
| } elsif ((&version_cmp($perlversion, '=', "5.34.1")) and Fink::Services::get_kernel_vers() == '24') { |
There was a problem hiding this comment.
Ugh. this part never got updated with macOS 14 and perl 5.30.3, but at least it still gets caught by the Fink::Services::get_kernel_vers() >= '21' elsif.
2ccf1e5 to
e95aba2
Compare
|
Added a patch for Sonoma 14.7 and tested there too, but still only on the Sequoia 15.1 beta, since I can't seem to be able to downgrade that installation to the released 15.0. |
|
I just created #269 which has a small subset of these changes to get bootstrap to "work" on 10.7; however I don't have the libcxx and other changes, so things end up running into issues with libiconv etc. I'll patch your version in and see if that fixes things This is my first time contributing to Fink so I'm not sure what the community norms are; but if we have multiple folks working on this, wouldn't it be better to set up a development branch for this? (so we can more easily incorporate all contributions, and then merge into the main branch once it's ready to go) |
|
I just tried this PR on macos14.7 and all the basic setup[1] seems to work without error; in particular libiconv appears to compile fine. There are still a bunch of warnings, but most of them are future-proofing things that should be handled upstream instead (sprintf deprecated, missing prototypes, etc). The only two warnings that seem particularly relevant to us are:
However, after the basic setup, when I try installing things I get the error [1]: That is, |
|
Yes, I encountered the same issues testing the bootstrap again on 14.7, though I don't recall seeing it in my first attempt on Sonoma. I was hesitating to set |
|
where is this I'm in a position to test this today as I no longer have fink now :\ |
|
I'm just adding a fix to Bootstrapping for inject to force new perl, and I'll commit the core parts of this PR, I'm not testing a full bootstrapping so I can't comment on the package changes yet. |
|
part of this PR was added, I haven't bootstrapped I only did an update via inject so I can't approve the info file changes yet. |
|
Made a fresh bootstrap from elsif ((&version_cmp($perlversion, '=', "5.34.1")) and Fink::Services::get_kernel_vers() == '24') {will still make it fail on current 14.x when called with |
|
MAIN also fails bootstrap on Sonoma now (having Xcode 16.1 as well) without the gettext + libiconv patches. NB it does not properly fail though; despite bootstrap proceeds to tell me (despite a missing In fact at this point all there is in With just the updates in 10.9-libcxx from this PR libiconv and dpkg build, completing bootstrap, but then the next installation attempt fails at So I think this confirms the above change to allow |
|
EDIT: nvm reading the code it'll work fine since it matches perl version first. Updating it now. |
|
Yep, and can't know for sure what system perl 25 or 26 will have anyway – at least there is a hypothetical chance they may still have 5341. |
|
totally, I thought this was a different section of code is why. This is perfectly fine and is now committed to main. The package changes still haven't been added yet as I haven't had a chance to attempt to bootstrap fresh. Which I need to do for fink/fink-distributions#1031 at some point anyhow. |
ebf561f to
e061733
Compare
I have rebased and pulled in the updates from fink/fink-distributions#1158 for those (bootstrap last tested under 15.1.1). |
e061733 to
699a254
Compare
|
Rebased including those two commits and bootstrapped this successfully on 15.3.1. |
|
Just tried the latest version on {aarch64, OSX 14.7, Darwin 23.6.0, Perl 5.34.1}, and the bootstrap goes through okay (yay!), however when trying to install something I get I'm guessing that's because fink isn't choosing the right perl version? I'd offer to patch it, but I'm not quite sure where that code is (is it |
|
You do have |
|
I do have The dependency chain looks something like |
|
But if your system correctly had
That's strange; what does |
|
There could be intermediate levels of dependencies in the graph. Possible culprits include flex and libtool2: they have dependencies on help2man and are themselves dependencies of many other packages possibly including those that ghostscript-esp lists as dependencies. I just pushed a commit that removes the flex->help2man dependency (wasn't actually used). I'm working on a similar fix for libtool2. |
|
Yes, probably libtool2 via e.g. libidn. |
|
fink/fink-distributions#1224 will remove libtool2:builddepends:help2man |
Fwiw, looking through some older buildlogs (for earlier versions of this PR), I found a message saying that
|
|
Ugh, I just noticed that the branch I was working on hadn't pulled in the #277 stuff like it should've. Sorry about that. I just started over again with a clean branch: starting at d2a2290, then applying #277, then applying #267. So now the bootstrap correctly gets I never did track down the root of the $ver warnings in #277. Just now on the new branch I ran And the uninitialized $ver error messages show up around |
|
Could you verify if fink/fink-distributions/pull/1224 allows you to successfully build libtool2? If so, that will be one whole level of mess cleared up (and generally make things better even for older platforms). |
It seems to build okay with that PR. It has a bunch of However, despite it appearing to build fine I'm not entirely sure if it has or not. When trying to install |
|
Can you post the actual command and error message about symbols and libX11 ? The Xquartz installer 2.8.5 (latest stable) should be arm64 compatible: And what's the output of |
|
The fragment of the error log: The requested command output: |
|
For X11, it looks like you have an older version of XQuartz installed that doesn't have arm64. Release 2.8.0 from 2021 was the first one to have Apple Silicon support and current release is 2.8.5. For libtool2, that looks fine. Not sure what happened during the build and I don't know now dpkg-gensymbols works |
|
Why hasn't this been merged yet? It's been a year with no activity. What's the hold-up? |
|
Ping |
Unless support has been added already in a different commit/PR, in which case this PR should be closed Sidenote: My original comment from January was a bit too aggressive, and I apologize for that |
|
I have not followed the libX11 issues above, and don't have a Sequoia system to test on at this time, but it seems all relevant changes (except perhaps removing the broken fink-mirrors) have made it into |
Edit: I was wrong, although MacOS guests are supported in Fusion for Intel hosts, they are NOT supported for Apple Silicon. However, you could instead use Parallels (paid) or UTM (free, based on QEMU), both of these should work on either Intel or Apple Silicon hosts |
Co-authored-by: Hanspeter Niederstrasser <[email protected]>
699a254 to
728e8cd
Compare
|
I've rebased to remove the spurious timestamp-only changes, showing that the only programmatic change remaining is the altslash -> (int) 0 replacement. This actually bootstraps both with and without the change on 26.4 and Big Sur 11.7 with Xcode 13.2, so I am not sure if the pointer mismatch was an Xcode 16-only failure, or if it has been resolved there as well. I suggest to squash if merging this. |
Been playing around a bit with the Sequoia public beta, these are patches I needed to bootstrap Fink using either the supplied command line tools or Xcode 16 beta 3.
Updates to recognise kernel version 24 etc. are fairly straightforward; the only system-perl is 5.34.1, set accordingly – this may raise the question which one to use on macOS 14, which has both 5.30 and 5.34, but I don't recall which is the default, or if they have been always available from 14.0.
The base packages bring in updates to libiconv, which however still ftbfs with Xcode 16 with incompatible pointer errors like
patched here by calling with a string
'/'instead ofNULL(which should be the default, though I don't seealtslashactually used at all in thisutf8_encodestrimplementation).gettext 0.20 also failed on various missing type declarations etc.; the update to 0.22 still had some strange failures not installing libintl.la, worked around that rather manually, but grateful for better suggestions.
Tested bootstrap and inject.pl under macOS 15 beta 3 and Xcode 16 beta 3 on arm64 and Rosetta-x86_64, and on Big Sur 11.7.10 x86_64.