Bug#967177: mozjs NMU to fix build issues.
peter green
plugwash at p10link.net
Sat Sep 19 19:26:25 BST 2020
tags 925781 +patch +pending
tags 967177 +patch +pending
thanks
I have decided to take the Ubuntu fixes for mozjs52 and turn them into a NMU. I also ran into some issues
with the clean target while preparing the NMU so I fixed those too.
mozjs52 has only one reverse-dependency: cjs which in turn has only one reverse dependency cinnamon, I have done a
"smoke test" on cinnamon with the new mozjs52 packages, but not being a cinnamon user or developer I don't know
what if any problems I should be looking for, so testing by someone familiar with the packages would be desirable.
I have uploaded the NMU to delayed/5, please tell me if you see any issues.
-------------- next part --------------
diff -Nru mozjs52-52.9.1/debian/changelog mozjs52-52.9.1/debian/changelog
--- mozjs52-52.9.1/debian/changelog 2018-08-01 08:22:02.000000000 +0100
+++ mozjs52-52.9.1/debian/changelog 2020-09-17 19:48:36.000000000 +0100
@@ -1,3 +1,14 @@
+mozjs52 (52.9.1-1.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Adopt ubuntu changes by Matthias Klose to fix build failures.
+ + Build using Python2 (Closes: 912941).
+ + Fix ftbfs with new warnings and -Werror in testcase (Closes: 925781).
+ + Build with -O2 on ppc64el, the embedded ICU ftbfs otherwise.
+ * Fix clean target.
+
+ -- Peter Michael Green <plugwash at debian.org> Thu, 17 Sep 2020 18:48:36 +0000
+
mozjs52 (52.9.1-1) unstable; urgency=medium
* Team upload
diff -Nru mozjs52-52.9.1/debian/control mozjs52-52.9.1/debian/control
--- mozjs52-52.9.1/debian/control 2018-08-01 08:22:02.000000000 +0100
+++ mozjs52-52.9.1/debian/control 2020-09-17 19:48:36.000000000 +0100
@@ -17,7 +17,7 @@
zlib1g-dev (>= 1:1.2.3),
pkg-config,
pkg-kde-tools,
- python-dev,
+ python2-dev,
zip
Rules-Requires-Root: no
Standards-Version: 4.1.5
diff -Nru mozjs52-52.9.1/debian/control.in mozjs52-52.9.1/debian/control.in
--- mozjs52-52.9.1/debian/control.in 2018-08-01 08:22:02.000000000 +0100
+++ mozjs52-52.9.1/debian/control.in 2020-09-17 19:44:32.000000000 +0100
@@ -13,7 +13,7 @@
zlib1g-dev (>= 1:1.2.3),
pkg-config,
pkg-kde-tools,
- python-dev,
+ python2-dev,
zip
Rules-Requires-Root: no
Standards-Version: 4.1.5
diff -Nru mozjs52-52.9.1/debian/patches/ftbfs-fix.diff mozjs52-52.9.1/debian/patches/ftbfs-fix.diff
--- mozjs52-52.9.1/debian/patches/ftbfs-fix.diff 1970-01-01 01:00:00.000000000 +0100
+++ mozjs52-52.9.1/debian/patches/ftbfs-fix.diff 2020-09-17 19:44:32.000000000 +0100
@@ -0,0 +1,14 @@
+Index: b/js/src/jsapi-tests/testPrintf.cpp
+===================================================================
+--- a/js/src/jsapi-tests/testPrintf.cpp
++++ b/js/src/jsapi-tests/testPrintf.cpp
+@@ -55,7 +55,8 @@ BEGIN_TEST(testPrintf)
+ CHECK(print_one("27270", "%zu", (size_t) 27270));
+ CHECK(print_one("27270", "%" PRIuSIZE, (size_t) 27270));
+ CHECK(print_one("hello", "he%so", "ll"));
+- CHECK(print_one("(null)", "%s", zero()));
++ // error: '%s' directive argument is null [-Werror=format-overflow=]
++ // CHECK(print_one("(null)", "%s", zero()));
+ CHECK(print_one("0", "%p", (char *) 0));
+ CHECK(print_one("h", "%c", 'h'));
+ CHECK(print_one("1.500000", "%f", 1.5f));
diff -Nru mozjs52-52.9.1/debian/patches/series mozjs52-52.9.1/debian/patches/series
--- mozjs52-52.9.1/debian/patches/series 2018-08-01 08:22:02.000000000 +0100
+++ mozjs52-52.9.1/debian/patches/series 2020-09-17 19:44:32.000000000 +0100
@@ -17,3 +17,4 @@
sparc64-support.patch
ia64-support.patch
Add-disable-layoutex-when-running-ICU-configure.patch
+ftbfs-fix.diff
diff -Nru mozjs52-52.9.1/debian/rules mozjs52-52.9.1/debian/rules
--- mozjs52-52.9.1/debian/rules 2018-08-01 08:22:02.000000000 +0100
+++ mozjs52-52.9.1/debian/rules 2020-09-17 19:48:36.000000000 +0100
@@ -12,7 +12,7 @@
# mozjs' build process does not seem to be compatible with other shells
# like zsh
export SHELL = /bin/sh
-export PYTHON = python
+export PYTHON = python2
SRCDIR = $(CURDIR)/js/src
CONFIGURE_FLAGS =
@@ -22,6 +22,9 @@
ifneq (,$(findstring $(DEB_BUILD_ARCH),ia64))
DEB_CFLAGS_MAINT_APPEND += -G0 -fno-lifetime-dse -fno-delete-null-pointer-checks
DEB_CXXFLAGS_MAINT_APPEND += -G0 -fno-lifetime-dse -fno-delete-null-pointer-checks
+else ifneq (,$(findstring $(DEB_BUILD_ARCH),ppc64el))
+ DEB_CFLAGS_MAINT_APPEND += -O2
+ DEB_CXXFLAGS_MAINT_APPEND += -O2
else
DEB_CFLAGS_MAINT_APPEND += -fno-schedule-insns2 -fno-lifetime-dse -fno-delete-null-pointer-checks
DEB_CXXFLAGS_MAINT_APPEND += -fno-schedule-insns2 -fno-lifetime-dse -fno-delete-null-pointer-checks
@@ -53,6 +56,7 @@
dh $@ --sourcedirectory=$(SRCDIR) --with gnome,pkgkde-symbolshelper
override_dh_clean:
+ -mv config/external/icu/data/icudt58l.dat.bak config/external/icu/data/icudt58l.dat
dh_clean
find $(CURDIR) -name \*.pyc -exec rm {} \;
find $(CURDIR)/js/src/ -type l -exec rm {} \;
@@ -63,6 +67,12 @@
rm -f $(CURDIR)/js/src/config.log
# rm -f $(CURDIR)/js/src/configure
rm -fr $(CURDIR)/intl/icu/source/autom4te.cache
+ rm -f python/psutil/psutil/*.*o
+ rm -rf python/psutil/build
+ rm -rf _virtualenv
+ rm -f js/src/all-tests.pkl
+ rm -f js/src/.cargo/config js/src/_build_manifests/install/_tests js/src/_build_manifests/install/dist_include js/src/_build_manifests/install/dist_private js/src/_build_manifests/install/dist_public js/src/_build_manifests/install/dist_sdk js/src/backend.FasterMakeBackend js/src/backend.FasterMakeBackend.in js/src/backend.RecursiveMakeBackend js/src/backend.RecursiveMakeBackend.in js/src/backend.mk js/src/binaries.json js/src/config/backend.mk js/src/config/doxygen.cfg js/src/config/emptyvars.mk js/src/config/external/fdlibm/backend.mk js/src/config/external/icu/backend.mk js/src/config/external/icu/common/backend.mk js/src/config/external/icu/data/backend.mk js/src/config/external/icu/i18n/backend.mk js/src/config/external/nspr/backend.mk js/src/config/external/zlib/backend.mk js/src/config/makefiles/test/Makefile js/src/config/tests/makefiles/autodeps/Makefile js/src/config/tests/src-simple/Makefile js/src/faster/Makefile js/src/faster/install_dist_bin js/src/ipc/ipdl/ipdlsrcs.mk js/src/js/src/Unified_cpp_js_src0.cpp js/src/js/src/Unified_cpp_js_src1.cpp js/src/js/src/Unified_cpp_js_src10.cpp js/src/js/src/Unified_cpp_js_src11.cpp js/src/js/src/Unified_cpp_js_src12.cpp js/src/js/src/Unified_cpp_js_src13.cpp js/src/js/src/Unified_cpp_js_src14.cpp js/src/js/src/Unified_cpp_js_src15.cpp js/src/js/src/Unified_cpp_js_src16.cpp js/src/js/src/Unified_cpp_js_src17.cpp js/src/js/src/Unified_cpp_js_src18.cpp js/src/js/src/Unified_cpp_js_src19.cpp js/src/js/src/Unified_cpp_js_src2.cpp js/src/js/src/Unified_cpp_js_src20.cpp js/src/js/src/Unified_cpp_js_src21.cpp js/src/js/src/Unified_cpp_js_src22.cpp js/src/js/src/Unified_cpp_js_src23.cpp js/src/js/src/Unified_cpp_js_src24.cpp js/src/js/src/Unified_cpp_js_src25.cpp js/src/js/src/Unified_cpp_js_src26.cpp js/src/js/src/Unified_cpp_js_src27.cpp js/src/js/src/Unified_cpp_js_src28.cpp js/src/js/src/Unified_cpp_js_src29.cpp js/src/js/src/Unified_cpp_js_src3.cpp js/src/js/src/Unified_cpp_js_src30.cpp js/src/js/src/Unified_cpp_js_src31.cpp js/src/js/src/Unified_cpp_js_src32.cpp js/src/js/src/Unified_cpp_js_src33.cpp js/src/js/src/Unified_cpp_js_src34.cpp js/src/js/src/Unified_cpp_js_src35.cpp js/src/js/src/Unified_cpp_js_src36.cpp js/src/js/src/Unified_cpp_js_src37.cpp js/src/js/src/Unified_cpp_js_src38.cpp js/src/js/src/Unified_cpp_js_src39.cpp js/src/js/src/Unified_cpp_js_src4.cpp js/src/js/src/Unified_cpp_js_src40.cpp js/src/js/src/Unified_cpp_js_src5.cpp js/src/js/src/Unified_cpp_js_src6.cpp js/src/js/src/Unified_cpp_js_src7.cpp js/src/js/src/Unified_cpp_js_src8.cpp js/src/js/src/Unified_cpp_js_src9.cpp js/src/js/src/gdb/Unified_cpp_js_src_gdb0.cpp js/src/js/src/js-config js/src/js/src/js.pc js/src/js/src/jsapi-tests/Unified_cpp_js_src_jsapi-tests0.cpp js/src/js/src/jsapi-tests/Unified_cpp_js_src_jsapi-tests1.cpp js/src/js/src/jsapi-tests/Unified_cpp_js_src_jsapi-tests2.cpp js/src/js/src/jsapi-tests/Unified_cpp_js_src_jsapi-tests3.cpp js/src/js/src/jsapi-tests/Unified_cpp_js_src_jsapi-tests4.cpp js/src/js/src/jsapi-tests/Unified_cpp_js_src_jsapi-tests5.cpp js/src/js/src/jsapi-tests/Unified_cpp_js_src_jsapi-tests6.cpp js/src/js/src/shell/Unified_cpp_js_src_shell0.cpp js/src/js/src/shell/shellmoduleloader.js js/src/memory/backend.mk js/src/memory/build/backend.mk js/src/memory/fallible/backend.mk js/src/memory/mozalloc/Unified_cpp_memory_mozalloc0.cpp js/src/memory/mozalloc/backend.mk js/src/memory/mozjemalloc/backend.mk js/src/mfbt/Unified_cpp_mfbt0.cpp js/src/mfbt/Unified_cpp_mfbt1.cpp js/src/mfbt/backend.mk js/src/mfbt/tests/backend.mk js/src/modules/fdlibm/backend.mk js/src/modules/fdlibm/src/backend.mk js/src/mozglue/backend.mk js/src/mozglue/build/backend.mk js/src/mozglue/misc/backend.mk js/src/mozinfo.json js/src/old-configure.vars js/src/python/backend.mk js/src/root-deps.mk js/src/root.mk js/src/taskcluster/backend.mk js/src/test-defaults.pkl js/src/test-installs.pkl
+ rm -rf js/src/js
override_dh_autoreconf:
dh_autoreconf $(CURDIR)/debian/autogen.sh
@@ -73,9 +83,10 @@
# The bundled copy of icu prefers clang, which we need to override to
# use gcc because clang doesn't support our DEB_CFLAGS_MAINT_APPEND
override_dh_auto_configure:
+ cp config/external/icu/data/icudt58l.dat config/external/icu/data/icudt58l.dat.bak
CC=$${CC:-$(DEB_HOST_GNU_TYPE)-gcc} \
CXX=$${CXX:-$(DEB_HOST_GNU_TYPE)-g++} \
- VERBOSE=1 python intl/icu_sources_data.py "$(CURDIR)"
+ VERBOSE=1 python2 intl/icu_sources_data.py "$(CURDIR)"
cd $(SRCDIR) && $(SHELL) configure \
--host=$(DEB_HOST_GNU_TYPE) \
--target=$(DEB_BUILD_GNU_TYPE) \
More information about the pkg-gnome-maintainers
mailing list