tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: long term broken packages



> Date: Sun, 01 Dec 2024 08:06:19 -0500
> From: Greg Troxel <gdt%lexort.com@localhost>
> 
> nia <nia%NetBSD.org@localhost> writes:
> 
> >>  > - x11/labltk
> >>  > failing on every platform for over a year
> >>  > "gmake[1]: liblabltk.a: No such file or directory"
> >>  > race condition?
> >> 
> >> gdt fixed this, problem was RANLIB not being set.
> >> 
> >> Did we stop passing RANLIB by default at some point? There's no way
> >> things could have ever worked otherwise.
> >
> > I recall recently some old make environment variables became missing
> > due to a change by riastradh related to cross-compilation. The ones
> > I noticed were fixed.
> >
> > We probably should define RANLIB by default...
> 
> Sure, but it's a clear bug for an upstream Makefile to expect RANLIB to
> be defined in the environment, without this being documented in INSTALL,
> and to fail to try 'ranlib'.

This happened with the update from ocaml-4.14.0 to ocaml-4.14.1, with
the following release note:

    - #11184, #11670: Stop calling ranlib on created / installed libraries
      (Sébastien Hinderer and Xavier Leroy, review by the same)

The upstream OCaml patch #11184 includes the following change:

diff --git a/Makefile.config.in b/Makefile.config.in
index fabec894ae8d..8c1f4aeab35f 100644
--- a/Makefile.config.in
+++ b/Makefile.config.in
@@ -88,10 +88,6 @@ LDFLAGS?=@LDFLAGS@
 ### How to invoke the C preprocessor through the C compiler
 CPP=@CPP@
 
-### How to invoke ranlib
-RANLIB=@RANLIB@
-RANLIBCMD=@RANLIBCMD@
-
 ### How to invoke ar
 ARCMD=@AR@

https://github.com/ocaml/ocaml/pull/11184

So it's not exactly our bug -- it arose from an upstream change in
lang/ocaml and x11/labltk presumably hasn't been updated to handle it.
Seems reasonable to work around this by setting RANLIB=${RANLIB:Q} in
MAKE_ENV (or INSTALL_ENV).


Home | Main Index | Thread Index | Old Index