Bug 1622963 - Install python 3.6 in build docker images. CLOSED TREE

Differential Revision: https://phabricator.services.mozilla.com/D77753
This commit is contained in:
Mike Hommey 2020-06-02 03:51:14 +00:00
Родитель 479c45bbea
Коммит 98b889cf83
5 изменённых файлов: 179 добавлений и 102 удалений

Просмотреть файл

@ -1,89 +0,0 @@
diff -Nru python3.5-3.5.3/debian/apt_preferences python3.5-3.5.3/debian/apt_preferences
--- python3.5-3.5.3/debian/apt_preferences 1970-01-01 09:00:00.000000000 +0900
+++ python3.5-3.5.3/debian/apt_preferences 2019-07-16 17:55:56.000000000 +0900
@@ -0,0 +1,7 @@
+Package: python3-pkg-resources
+Pin: release n=jessie-backports
+Pin-Priority: 900
+
+Package: python3-setuptools
+Pin: release n=jessie-backports
+Pin-Priority: 900
diff -Nru python3.5-3.5.3/debian/changelog python3.5-3.5.3/debian/changelog
--- python3.5-3.5.3/debian/changelog 2017-01-19 23:11:04.000000000 +0900
+++ python3.5-3.5.3/debian/changelog 2019-07-16 17:55:56.000000000 +0900
@@ -1,3 +1,17 @@
+python3.5 (3.5.3-1.deb8moz1) jessie; urgency=medium
+
+ * Mozilla backport for jessie.
+ * debian/control.in: Remove libmpdec-dev dependency; Jessie has a
+ broken version.
+ * debian/rules:
+ - Remove --with-system-libmpdec because jessie doesn't have it.
+ - Disable PGO builds because they segfault.
+ * debian/rules, debian/apt_preferences: Prefer python3-pkg-resources and
+ python3-setuptools being installed from jessie-backports when this package
+ is installed.
+
+ -- Mike Hommey <glandium@mozilla.com> Tue, 16 Jul 2019 17:55:56 +0900
+
python3.5 (3.5.3-1) unstable; urgency=medium
* Python 3.5.3 release.
diff -Nru python3.5-3.5.3/debian/control.in python3.5-3.5.3/debian/control.in
--- python3.5-3.5.3/debian/control.in 2016-12-13 23:21:47.000000000 +0900
+++ python3.5-3.5.3/debian/control.in 2019-07-16 17:55:56.000000000 +0900
@@ -9,7 +9,7 @@
zlib1g-dev, libbz2-dev, liblzma-dev,
libgdbm-dev, libdb-dev,
tk-dev, blt-dev (>= 2.4z), libssl-dev,
- libexpat1-dev, libmpdec-dev (>= 2.4),
+ libexpat1-dev,
libbluetooth-dev [!hurd-i386 !kfreebsd-i386 !kfreebsd-amd64],
locales [!armel !avr32 !hppa !ia64 !mipsel],
libsqlite3-dev, libffi-dev (>= 3.0.5) [!or1k !avr32],
@@ -53,7 +53,6 @@
Priority: @PRIO@
Pre-Depends: ${misc:Pre-Depends}
Depends: lib@PVER@-minimal (= ${binary:Version}), mime-support, ${shlibs:Depends}, ${misc:Depends}
-Breaks: libmpdec2 (<< 2.4.2)
Description: Interactive high-level object-oriented language (standard library, version @VER@)
Python is a high-level, interactive, object-oriented language. Its @VER@ version
includes an extensive class library with lots of goodies for
diff -Nru python3.5-3.5.3/debian/rules python3.5-3.5.3/debian/rules
--- python3.5-3.5.3/debian/rules 2017-01-19 23:11:04.000000000 +0900
+++ python3.5-3.5.3/debian/rules 2019-07-16 17:55:56.000000000 +0900
@@ -155,14 +155,6 @@
EXTRA_OPT_FLAGS += -O2
endif
-ifeq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
- ifeq ($(DEB_HOST_ARCH_OS),linux)
- ifneq (,$(findstring $(DEB_HOST_ARCH), amd64 armel armhf i386 powerpc ppc64 ppc64el s390x))
- with_pgo := yes
- endif
- endif
-endif
-
ifneq (,$(findstring $(DEB_HOST_ARCH), amd64 armel armhf i386 powerpc ppc64 ppc64el s390x))
with_lto := yes
endif
@@ -321,8 +313,7 @@
--with-dbmliborder=bdb:gdbm \
--with-computed-gotos \
--without-ensurepip \
- --with-system-expat \
- --with-system-libmpdec \
+ --with-system-expat
ifneq (,$(filter $(DEB_HOST_ARCH), avr32 or1k))
common_configure_args += --without-ffi
@@ -1292,6 +1283,8 @@
install -D -m 644 $$i debian/$$b/usr/share/lintian/overrides/$$b; \
done
+ install -D -m 644 debian/apt_preferences $(d_min)/etc/apt/preferences.d/python3.5.pref
+
touch stamps/stamp-install
# Build architecture-independent files here.

Просмотреть файл

@ -0,0 +1,165 @@
diff -Nru python3.6-3.6.3/debian/apt_preferences python3.6-3.6.3/debian/apt_preferences
--- python3.6-3.6.3/debian/apt_preferences 1970-01-01 09:00:00.000000000 +0900
+++ python3.6-3.6.3/debian/apt_preferences 2020-05-07 11:20:37.000000000 +0900
@@ -0,0 +1,7 @@
+Package: python3-pkg-resources
+Pin: release n=jessie-backports
+Pin-Priority: 900
+
+Package: python3-setuptools
+Pin: release n=jessie-backports
+Pin-Priority: 900
diff -Nru python3.6-3.6.3/debian/changelog python3.6-3.6.3/debian/changelog
--- python3.6-3.6.3/debian/changelog 2017-12-05 19:22:15.000000000 +0900
+++ python3.6-3.6.3/debian/changelog 2020-05-07 11:20:37.000000000 +0900
@@ -1,3 +1,19 @@
+python3.6 (3.6.3-2.deb8moz1) jessie; urgency=medium
+
+ * Mozilla backport for jessie.
+ * debian/control.in: Remove libmpdec-dev dependency; Jessie has a
+ broken version.
+ * debian/rules:
+ - Remove --with-system-libmpdec because jessie doesn't have it.
+ - Disable PGO builds because they segfault.
+ * debian/rules, debian/apt_preferences: Prefer python3-pkg-resources and
+ python3-setuptools being installed from jessie-backports when this package
+ is installed.
+ * debian/control.in, debian/rules: Don't generate the -doc package, sphinx
+ is too old in jessie.
+
+ -- Mike Hommey <glandium@mozilla.com> Tue, 7 May 2020 11:20:37 +0900
+
python3.6 (3.6.3-2) unstable; urgency=medium
* Update to 20171205 from the 3.6 branch.
diff -Nru python3.6-3.6.3/debian/control.in python3.6-3.6.3/debian/control.in
--- python3.6-3.6.3/debian/control.in 2017-12-05 19:22:15.000000000 +0900
+++ python3.6-3.6.3/debian/control.in 2020-05-07 11:20:37.000000000 +0900
@@ -9,7 +9,7 @@
zlib1g-dev, libbz2-dev, liblzma-dev,
libgdbm-dev, libdb-dev,
tk-dev, blt-dev (>= 2.4z), libssl-dev,
- libexpat1-dev, libmpdec-dev (>= 2.4),
+ libexpat1-dev,
libbluetooth-dev [!hurd-i386 !kfreebsd-i386 !kfreebsd-amd64],
locales [!armel !avr32 !hppa !ia64 !mipsel],
libsqlite3-dev, libffi-dev (>= 3.0.5) [!or1k !avr32],
@@ -27,7 +27,7 @@
Multi-Arch: allowed
Priority: @PRIO@
Depends: @PVER@-minimal (= ${binary:Version}), lib@PVER@-stdlib (= ${binary:Version}), mime-support, ${shlibs:Depends}, ${misc:Depends}
-Suggests: @PVER@-venv, @PVER@-doc, binutils
+Suggests: @PVER@-venv, binutils
Description: Interactive high-level object-oriented language (version @VER@)
Python is a high-level, interactive, object-oriented language. Its @VER@ version
includes an extensive class library with lots of goodies for
@@ -53,7 +53,7 @@
Priority: @PRIO@
Pre-Depends: ${misc:Pre-Depends}
Depends: lib@PVER@-minimal (= ${binary:Version}), mime-support, ${shlibs:Depends}, ${misc:Depends}
-Breaks: libmpdec2 (<< 2.4.2), PYFPE_BREAKS
+Breaks: PYFPE_BREAKS
Replaces: lib@PVER@-testsuite (<< 3.6.2-2)
Description: Interactive high-level object-oriented language (standard library, version @VER@)
Python is a high-level, interactive, object-oriented language. Its @VER@ version
@@ -164,28 +164,6 @@
IDLE is an Integrated Development Environment for Python (v@VER@).
IDLE is written using Tkinter and therefore quite platform-independent.
-Package: @PVER@-doc
-Section: doc
-Architecture: all
-Multi-Arch: foreign
-Depends: libjs-jquery, libjs-underscore, ${misc:Depends}
-Suggests: @PVER@
-Description: Documentation for the high-level object-oriented language Python (v@VER@)
- These is the official set of documentation for the interactive high-level
- object-oriented language Python (v@VER@). All documents are provided
- in HTML format. The package consists of ten documents:
- .
- * What's New in Python@VER@
- * Tutorial
- * Python Library Reference
- * Macintosh Module Reference
- * Python Language Reference
- * Extending and Embedding Python
- * Python/C API Reference
- * Installing Python Modules
- * Documenting Python
- * Distributing Python Modules
-
Package: @PVER@-dbg
Section: debug
Architecture: any
diff -Nru python3.6-3.6.3/debian/rules python3.6-3.6.3/debian/rules
--- python3.6-3.6.3/debian/rules 2017-12-05 19:22:15.000000000 +0900
+++ python3.6-3.6.3/debian/rules 2020-05-07 11:20:37.000000000 +0900
@@ -180,14 +180,6 @@
DEBUG_CFLAGS += -fexceptions
endif
-ifeq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
- ifeq ($(DEB_HOST_ARCH_OS),linux)
- ifneq (,$(findstring $(DEB_HOST_ARCH), amd64 armel armhf i386 powerpc ppc64 ppc64el s390x))
- with_pgo := yes
- endif
- endif
-endif
-
ifneq (,$(findstring $(DEB_HOST_ARCH), amd64 armel armhf i386 powerpc ppc64 ppc64el s390x))
with_lto := yes
endif
@@ -347,8 +339,7 @@
--with-dbmliborder=bdb:gdbm \
--with-computed-gotos \
--without-ensurepip \
- --with-system-expat \
- --with-system-libmpdec \
+ --with-system-expat
ifneq (,$(filter $(DEB_HOST_ARCH), avr32 or1k))
common_configure_args += --without-ffi
@@ -684,7 +675,6 @@
stamps/stamp-doc-html:
dh_testdir
- $(MAKE) -C Doc html
@mkdir -p stamps
touch stamps/stamp-doc-html
@@ -1310,6 +1300,8 @@
install -D -m 644 $$i debian/$$b/usr/share/lintian/overrides/$$b; \
done
+ install -D -m 644 debian/apt_preferences $(d_min)/etc/apt/preferences.d/python3.6.pref
+
touch stamps/stamp-install
# Build architecture-independent files here.
@@ -1317,26 +1309,6 @@
dh_testdir -i
dh_testroot -i
- : # $(p_doc) package
- dh_installdirs -p$(p_doc) \
- usr/share/doc/$(p_base) \
- usr/share/doc/$(p_doc)
- dh_installdocs -p$(p_doc)
- cp -a Doc/build/html $(d_doc)/usr/share/doc/$(p_base)/
- rm -f $(d_doc)/usr/share/doc/$(p_base)/html/_static/jquery.js
- dh_link -p$(p_doc) \
- /usr/share/doc/$(p_base)/html /usr/share/doc/$(p_doc)/html \
- /usr/share/javascript/jquery/jquery.js /usr/share/doc/$(p_base)/html/_static/jquery.js \
- /usr/share/javascript/underscore/underscore.js /usr/share/doc/$(p_base)/html/_static/underscore.js
-
- : # devhelp docs
- cd $(buildd_static) && ./python ../debian/pyhtml2devhelp.py \
- ../$(d_doc)/usr/share/doc/$(p_base)/html index.html $(VER) \
- > ../$(d_doc)/usr/share/doc/$(p_base)/html/$(PVER).devhelp
- gzip -9nv $(d_doc)/usr/share/doc/$(p_base)/html/$(PVER).devhelp
- dh_link -p$(p_doc) \
- /usr/share/doc/$(p_base)/html /usr/share/devhelp/books/$(PVER)
-
for i in $(p_ltst); do \
rm -rf debian/$$i/usr/share/doc/$$i; \
ln -s $(p_base) debian/$$i/usr/share/doc/$$i; \

Просмотреть файл

@ -58,7 +58,7 @@ jobs:
- deb8-gdb
- deb8-git
- deb8-mercurial
- deb8-python3.5
- deb8-python3.6
- deb8-python3-defaults
- deb8-python-zstandard
- deb8-xz-utils

Просмотреть файл

@ -24,16 +24,16 @@ job-defaults:
snapshot: 20200422T205110Z
jobs:
deb8-python3.5:
description: "Python 3.5 backport for Debian jessie"
deb8-python3.6:
description: "Python 3.6 backport for Debian jessie"
treeherder:
symbol: Deb8(python3.5)
symbol: Deb8(python3.6)
run:
using: debian-package
dsc:
url: http://snapshot.debian.org/archive/debian/20170119T211826Z/pool/main/p/python3.5/python3.5_3.5.3-1.dsc
sha256: 5259cbb15bb93f7bdfbe9ce03a972ea47f81c86057d5939ef9ce578414b2f1de
patch: python3.5-jessie.diff
url: http://snapshot.debian.org/archive/debian/20171205T222638Z/pool/main/p/python3.6/python3.6_3.6.3-2.dsc
sha256: d791dd2671127394ce5383e345b2fed9ab2481be65b6c420fa53b2ee18c240ca
patch: python3.6-jessie.diff
pre-build-command: debian/rules control-file
deb8-python3-defaults:
@ -43,10 +43,11 @@ jobs:
run:
using: debian-package
dsc:
url: http://snapshot.debian.org/archive/debian/20170120T212942Z/pool/main/p/python3-defaults/python3-defaults_3.5.3-1.dsc
sha256: 2bec1dd8a5836d5a19fbbd48d7c49aec40642669036297a34bbfd8b0b2d61439
# The last version that doesn't also require python 3.7 or a separate python3-distutils package.
url: http://snapshot.debian.org/archive/debian/20171026T221955Z/pool/main/p/python3-defaults/python3-defaults_3.6.3-2.dsc
sha256: df91831a9a307f5e7f3fabdda52f21eeffd2f683cbeca5a581c37c1c0912549d
packages:
- deb8-python3.5
- deb8-python3.6
pre-build-command: debian/rules control-file
deb8-python-setuptools:
@ -187,7 +188,7 @@ jobs:
url: http://snapshot.debian.org/archive/debian/20170125T211752Z/pool/main/d/dh-python/dh-python_2.20170125.dsc
sha256: ef4f2951cea36ae4aac29126a1017505f98b595432fb5bdac0f21b4b4d72c1b4
packages:
- deb8-python3.5
- deb8-python3.6
- deb8-python3-defaults
deb8-xz-utils:
@ -235,7 +236,7 @@ jobs:
patch: python-zstandard-jessie.diff
packages:
- deb8-dh-python
- deb8-python3.5
- deb8-python3.6
- deb8-python3-defaults
deb9-python-zstandard:

Просмотреть файл

@ -39,7 +39,7 @@ RUN /usr/local/sbin/setup_packages.sh $TASKCLUSTER_ROOT_URL $DOCKER_IMAGE_PACKAG
mercurial \
patch \
python \
python3.5 \
python3 \
python3-distutils-extra \
python3-minimal \
python-zstandard \