[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