Menu

#65 xindy fails to build after 2036-02-07

v2.4
pending
nobody
None
5
2023-10-23
2023-07-30
No

While working on reproducible builds for openSUSE, I found that our xindy 2.5.1 package stops to build after 2036-02-07T06:30:00

build log ended thusly:

[ 121s] config.status: executing depfiles commands
[ 121s] + make -j1
[ 121s] Making all in src
[ 121s] make[1]: Entering directory '/home/abuild/rpmbuild/BUILD/xindy-2.5.1/src'
[ 121s] sed 's|@MODULEDIR[@]|/usr/lib64/xindy/modules|g' <./defaults.xdy.in >defaults.xdy
[ 121s] /usr/bin/clisp -q -E iso-8859-1 -c base.lsp -o base.fas
[ 121s] ;; Compiling file /home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/base.lsp ...
[ 121s] ;; Wrote file /home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/base.fas
[ 121s] 0 errors, 0 warnings
[ 121s] /usr/bin/clisp -q -E iso-8859-1 -c ordrules.lsp -o ordrules.fas
[ 122s] ;; Compiling file /home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/ordrules.lsp ...
[ 122s] ;; Wrote file /home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/ordrules.fas
[ 122s] 0 errors, 0 warnings
[ 122s] /usr/bin/clisp -q -E iso-8859-1 -c locref.lsp -o locref.fas
[ 122s] ;; Compiling file /home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/locref.lsp ...
[ 122s] WARNING: OPEN:
[ 122s] #<input buffered="" file-stream="" character="" <span="">[ 122s] #P"/home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/base.lsp" @1>
[ 122s] already points to file
[ 122s] "/home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/base.lsp", opening the
[ 122s] file again for :OUTPUT may produce unexpected results
[ 122s] Open the file anyway
[ 122s] ;; Compiling file /home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/base.lsp ...
[ 122s] ;; Wrote file /home/abuild/rpmbuild/BUILD/xindy-2.5.1/src/base.lsp
[ 122s] *** - USE-PACKAGE: There is no package with name "BASE"
[ 122s]
[ 122s] 0 errors, 1 warning
[ 122s] make[1]: *** [Makefile:509: locref.fas] Error 1
[ 122s] make[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/xindy-2.5.1/src'
[ 122s] make: *** [Makefile:418: all-recursive] Error 1
[ 122s] error: Bad exit status from /var/tmp/rpm-tmp.m9EhO0 (%build)
[ 122s]
[ 122s] RPM build errors:
[ 122s] Bad exit status from /var/tmp/rpm-tmp.m9EhO0 (%build)

Discussion

  • Joachim Schrod

    Joachim Schrod - 2023-08-07

    Well, the log basically tells us:

    • base.lsp is compiled to base.fas
    • When locref.lsp shall be compiled, the Lisp system doesn't detect that this happened. It reopens base.fas (or base.lsp?) for writing and thus overwrites the result of the previous compile.
    • Afterwards it complains that the module base is not available. Of course, because it was just overwritten.

    This is obviously a problem with CLISP on the compiling system.

    What I don't understand: The issue report explicitly tells that the building fails after 2036-02-07T06:30:00.

    • I assume that setting this time has something to do with the project to produce reproducible builds.
    • Does it succeed at an earlier date? Is the date really relevant for this issue?
      The build date is before signed 32bit time_t rolls over. Therefore the probability that it is a Y2K38 bug is nil.

    Thus, I need to know: Is this a general issue report on openSUSE or is this a special report that specifically happens with builds on this date?

     
    • Bernhard M. Wiedemann

      It is LISP, which uses a 32-bit unsigned integer to count seconds since 1900-01-01.

      date -u -d 1900-01-01 +%s
      -2208988800
      2**32 - 2208988800
      => 2085978496
      date -u -d @2085978496
      2036-02-07T06:28:16 UTC
      
       
  • Joachim Schrod

    Joachim Schrod - 2023-08-07
    • status: open --> pending
     

Log in to post a comment.

MongoDB Logo MongoDB