[Top][All Lists]

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

Re: automake 1.16.4 and new PYTHON_PREFIX

From: Luke Mewburn
Subject: Re: automake 1.16.4 and new PYTHON_PREFIX
Date: Thu, 26 Aug 2021 15:58:08 +1000
User-agent: Mutt/1.10.1 (2018-07-13)

On 21-08-25 10:00, Karl Berry wrote:
  |     yf> Would keeping PYTHON_PREFIX but changing its default to the
  |     "classical" value be a working solution for this ?
  | Yes, I think we should. And I think I should have been smart enough to
  | realize that changing the default behavior was too risky in the first
  | place. Apologies for that.
  | My thought now is to add yet one more option, like
  | --python-prefix-from-python, to get the new 1.16.4 behavior of using the
  | "computed" sys.* values. Else go back to the previous $prefix-based 
  | Does that sound sensible? A better name for the option?
  | Joshua (or anyone), would you be willing to work on something like by
  | any chance? Would be greatly, greatly, appreciated. I am way
  | overcommitted right now (like all of us, I know ...).
  |     please keep the --with-python_prefix
  | Definitely. --thanks, karl.

Currently overriding the python module path to install in the default
python module path in a manner that works for DESTDIR and distcheck
is a bit tricky, especially when using a different prefix.

I think we need an easy way to set a default for this behaviour
from within, similar to AC_PREFIX_DEFAULT(), so that
the end-user doesn't have to pass a bunch of options to configure
just to get the build to work sensibly.

The current workaround I use is described below. If there was a
cleaner/more standardized mechanism built into automake / autoconf,
I'd use that.

Change the default prefix in


Set defaults for make variables in

          [$($PYTHON -c 'from distutils import sysconfig; 
        dnl Note: Makefile sets PY_OVERRIDE_PREFIX from $(prefix) or 
          [$($PYTHON -c 'from distutils import sysconfig; 

Use a (non-portable) GNU make snippet in

        # Install python module to $(prefix) if it's not /opt/something,
        # otherwise the default python prefix in $(PY_OVERRIDE_BASE).
        PY_OVERRIDE_PREFIX := $(patsubst 
        pkgpyexecdir = $(PY_OVERRIDE_EXTDIR)/mymodule

This latter requires in



Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]