Package: python3.9
Version: 3.9.2-1
Severity: minor
X-Debbugs-Cc: [email protected]

Hello,

Noticed that Makefile.pre.in has the following comment for the _math.o target:

# This is shared by the math and cmath modules
# don't build with -fPIC when building as math and cmath as builtins

During the package compilation, makesetup preprocesses this file and adds the
build targets for math and cmath as builtin modules adding -fPIC, while
introducing duplicate targets in the resulting Makefile.
Those duplicate targets are meant to be removed by debian/rules in the
__post_configure step:

: # this second rule doesn't build with -fPIC, remove it.
sed '/^Modules\/_math.o: .*PY_STDMODULE_CFLAGS/d' $(1)/Makefile > 
$(1)/Makefile.fixed

Which will not remove anything as since then PY_STDMODULE_CFLAGS has been 
replaced
with PY_BUILTIN_MODULE_CFLAGS in the generated Makefile.

The official /usr/lib/python3.9/config-3.9-x86_64-linux-gnu/Makefile has these:

CCSHARED=-fPIC
CFLAGSFORSHARED=$(CCSHARED)
PY_STDMODULE_CFLAGS= $(PY_CFLAGS) $(PY_CFLAGS_NODIST) $(PY_CPPFLAGS) 
$(CFLAGSFORSHARED)
PY_BUILTIN_MODULE_CFLAGS= $(PY_STDMODULE_CFLAGS) -DPy_BUILD_CORE_BUILTIN

Modules/_math.o: $(srcdir)/Modules/_math.c; $(CC) $(PY_BUILTIN_MODULE_CFLAGS) 
...

So not sure if -fPIC really causes a problem or not, as it's been this way for
a while, and others would have complained if something is broken.
Just wanted to let you know about this.

Regards,
Patrik

-- System Information:
Debian Release: 11.4
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'proposed-updates'), (500, 
'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.10.0-17-amd64 (SMP w/2 CPU threads)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages python3.9 depends on:
ii  libpython3.9-stdlib  3.9.2-1
ii  media-types          4.0.0
ii  mime-support         3.66
ii  python3.9-minimal    3.9.2-1

python3.9 recommends no packages.

Versions of packages python3.9 suggests:
ii  binutils        2.35.2-2
pn  python3.9-doc   <none>
pn  python3.9-venv  <none>

-- no debconf information

Reply via email to