[MacPorts] #54124: guile @2.2.2 won't build on PPC Leopard, Mac OS X 10.5.8, because is uses non-existing /lib/cpp as C preprocessor
MacPorts
noreply at macports.org
Mon Sep 7 21:37:59 UTC 2020
#54124: guile @2.2.2 won't build on PPC Leopard, Mac OS X 10.5.8, because is uses
non-existing /lib/cpp as C preprocessor
------------------------+---------------------------------------
Reporter: ballapete | Owner: kencu
Type: defect | Status: closed
Priority: Normal | Milestone:
Component: ports | Version: 2.4.1
Resolution: fixed | Keywords: tiger leopard snowleopard
Port: guile |
------------------------+---------------------------------------
Comment (by ballapete):
Replying to [comment:59 kencu]:
> have you stumbled across a script that makes the prebuilt directories?
Or is it all by hand?
It was done manually: `gtar -cf - <the subdirs with built GO files in
"bootstrap" directory> | ( pushd <"prebuilt/32-bit-big-endian" directory
in outpacked new Guile version> ; gtar xf - )` followed by `gtar zcf
/opt/local/var/macports/distfiles/guile/guile-<VERSION>.tar.gz
./guile-<VERSION>'. The original faulty GO files were first unlinked by
gtar and then extracted from the pipe. The original TAR file was renamed
so that a completely new TAR file with the original VERSION could be
created. In `Portfile` I had to edit checksums and size to describe the
new sources archive. The new TAR archive file shows my bootstrapped GO
files in prebuilt/32-bit-big-endian.
I might be seeing the cause for neglecting the new prebuilt files:
{{{
date: illegal time format
usage: date [-jnu] [-d dst] [-r seconds] [-t west] [-v[+|-]val[ymwdHMS]]
...
[-f fmt date | [[[mm]dd]HH]MM[[cc]yy][.ss]] [+format]
}}}
It's these statements in `libguile/Makefile` (around line # 3888):
{{{
@BUILD_DATE="$${SOURCE_DATE_EPOCH:-`date '+%s'`}" ; \
echo ' { "buildstamp", "'`date -u +'%Y-%m-%d %T' -d
@$$BUILD_DATE`'" }, \' >> libpath.tmp
@echo '}' >> libpath.tmp
$(AM_V_GEN)mv libpath.tmp libpath.h
}}}
`date '+%s'` works as expected on every system, `date -u +'%Y-%m-%d %T' -d
@$$BUILD_DATE` fails on older systems (it actually converts the time
stamp's time format from EPOCH to YYYY-MM-DD HH:MM.SS). It will probably
work with `gdate`. {{{port provides `which gdate`}}} gives
`/opt/local/bin/gdate is provided by: coreutils`, so `coreutils` would
become a `build dependancy`.
More likely is that I had in `Portfile`:
{{{
post-patch {
move ${worksrcpath}/prebuilt/32-bit-big-endian
${worksrcpath}/prebuilt/32-bit-big-endian-broken
}
}}}
This explains quite a lot…
I'm going to rebuild `Guile @2.2.7` **without** that stement!
--
Ticket URL: <https://trac.macports.org/ticket/54124#comment:62>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list