Package: cjs
Version: 4.4.0-4
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)

Building on: Ubuntu Focal 20.04. Also applies on unstable branch 20.10 Groovy

It looks like there is a new update in libglib2.0, or a new update that
breaks/deprecates GParamaters.

This may be because -Werror is still applied in the compilation-therefore this
could be overwritten by removing it but I don't think it's a smart choice.

I compiled upstream and it went flawlessly. I didn't look through anything to
see if they removed -Werror as a whole but it still exists in configure.ac

Tomorrow I will probably do deeper comparisons and see if a .patch is needed to
fit with someone missing from upstream.

For now, here is the output of dh_auto_build:

libtool: compile:  g++ -std=gnu++11 -DHAVE_CONFIG_H -I. -DG_LOG_DOMAIN=\"Cjs\"
-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread
-include /usr/include/mozjs-52/js/RequiredDefines.h -I/usr/include/gobject-
introspection-1.0 -I/usr/include/libmount -I/usr/include/blkid
-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
-I/usr/include/mozjs-52 -DGJS_TOP_SRCDIR=\".\" -DGJS_TOP_BUILDDIR=\".\"
-DGJS_JS_DIR=\"/usr/share/cjs-1.0\" -DPKGLIBDIR=\"/usr/lib/x86_64-linux-
gnu/cjs\" -I./gi -DGJS_COMPILATION -pthread -I/usr/include/gtk-3.0
-I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0
-I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include
-I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/cairo
-I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/harfbuzz
-I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1
-I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16
-I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libmount -I/usr/include/blkid
-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -Wdate-
time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -Wall -Wextra -Wundef -Wwrite-
strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls -Wno-unused-
parameter -Wno-missing-field-initializers -Wformat=2 -Wcast-align -Wformat-
nonliteral -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Winline
-Wpacked -Wmissing-format-attribute -Wmissing-noreturn -Winit-self -Wmissing-
include-dirs -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wno-
overloaded-virtual -Wswitch-enum -Wswitch-default -Werror -Wno-suggest-
attribute=format -Wno-error=unused-parameter -Wno-error=missing-field-
initializers -Wno-error=overloaded-virtual -g -O2 -fdebug-prefix-
map=/home/jpeisach/Desktop/cjs-4.6.0=. -fstack-protector-strong -Wformat
-Werror=format-security -c gi/object.cpp  -fPIC -DPIC -o gi/.libs/libcjs_la-
object.o

gi/object.cpp:246:56: error: ‘GParameter’ is deprecated [-Werror=deprecated-
declarations]
  246 |                            bool            constructing)
      |                                                        ^
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from gi/object.h:29,
                 from gi/object.cpp:34:
/usr/include/glib-2.0/gobject/gparam.h:194:28: note: declared here
  194 | typedef struct _GParameter GParameter GLIB_DEPRECATED_TYPE_IN_2_54;
      |                            ^~~~~~~~~~
gi/object.cpp: In function ‘bool set_g_param_from_prop(JSContext*,
ObjectInstance*, const char*, bool&, JS::HandleValue, JS::ObjectOpResult&)’:
gi/object.cpp:487:16: error: ‘GParameter’ is deprecated [-Werror=deprecated-
declarations]
  487 |     GParameter param = { NULL, { 0, }};
      |                ^~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from gi/object.h:29,
                 from gi/object.cpp:34:
/usr/include/glib-2.0/gobject/gparam.h:194:28: note: declared here
  194 | typedef struct _GParameter GParameter GLIB_DEPRECATED_TYPE_IN_2_54;
      |                            ^~~~~~~~~~
gi/object.cpp: At global scope:
gi/object.cpp:963:51: error: ‘GParameter’ is deprecated [-Werror=deprecated-
declarations]
  963 |                                       std::vector<GParameter>&
gparams)
      |                                                   ^~~~~~~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from gi/object.h:29,
                 from gi/object.cpp:34:
/usr/include/glib-2.0/gobject/gparam.h:194:28: note: declared here
  194 | typedef struct _GParameter GParameter GLIB_DEPRECATED_TYPE_IN_2_54;
      |                            ^~~~~~~~~~
gi/object.cpp: In function ‘bool
object_instance_props_to_g_parameters(JSContext*, JSObject*, const
JS::HandleValueArray&, GType, std::vector<_GParameter>&)’:
gi/object.cpp:986:20: error: ‘GParameter’ is deprecated [-Werror=deprecated-
declarations]
  986 |         GParameter gparam = { NULL, { 0, }};
      |                    ^~~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from gi/object.h:29,
                 from gi/object.cpp:34:
/usr/include/glib-2.0/gobject/gparam.h:194:28: note: declared here
  194 | typedef struct _GParameter GParameter GLIB_DEPRECATED_TYPE_IN_2_54;
      |                            ^~~~~~~~~~
gi/object.cpp: At global scope:
gi/object.cpp:1473:28: error: ‘GParameter’ is deprecated [-Werror=deprecated-
declarations]
 1473 | clear_g_params(std::vector<GParameter>& params)
      |                            ^~~~~~~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from gi/object.h:29,
                 from gi/object.cpp:34:
/usr/include/glib-2.0/gobject/gparam.h:194:28: note: declared here
  194 | typedef struct _GParameter GParameter GLIB_DEPRECATED_TYPE_IN_2_54;
      |                            ^~~~~~~~~~
gi/object.cpp: In function ‘void clear_g_params(std::vector<_GParameter>&)’:
gi/object.cpp:1475:21: error: ‘GParameter’ is deprecated [-Werror=deprecated-
declarations]
 1475 |     for (GParameter param : params)
      |                     ^~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from gi/object.h:29,
                 from gi/object.cpp:34:
/usr/include/glib-2.0/gobject/gparam.h:194:28: note: declared here
  194 | typedef struct _GParameter GParameter GLIB_DEPRECATED_TYPE_IN_2_54;
      |                            ^~~~~~~~~~
gi/object.cpp: In function ‘bool object_instance_init(JSContext*,
JS::MutableHandleObject, const JS::HandleValueArray&)’:
gi/object.cpp:1486:17: error: ‘GParameter’ is deprecated [-Werror=deprecated-
declarations]
 1486 |     std::vector<GParameter> params;
      |                 ^~~~~~~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from gi/object.h:29,
                 from gi/object.cpp:34:
/usr/include/glib-2.0/gobject/gparam.h:194:28: note: declared here
  194 | typedef struct _GParameter GParameter GLIB_DEPRECATED_TYPE_IN_2_54;
      |                            ^~~~~~~~~~
cc1plus: all warnings being treated as errors
make[1]: *** [Makefile:2341: gi/libcjs_la-object.lo] Error 1
make[1]: Leaving directory '/home/jpeisach/Desktop/cjs-4.6.0'
make: *** [Makefile:1467: all] Error 2
dh_auto_build: error: make -j1 returned exit code 2

That is Salsa Debian Unstable's build. Linux Mint still will show it builds
with -Werror

I don't know if Debian is ahead/behind of anything of Ubuntu or whatnot but I'm
just a bit confused here and I think something may be missing.

-Josh Peisach



-- System Information:
Debian Release: bullseye/sid
  APT prefers focal-updates
  APT policy: (500, 'focal-updates'), (500, 'focal-security'), (500, 'focal'), 
(100, 'focal-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.4.0-37-generic (SMP w/4 CPU cores)
Kernel taint flags: TAINT_OOT_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages cjs depends on:
ii  libc6         2.31-0ubuntu9
ii  libcjs0       4.4.0-4
ii  libglib2.0-0  2.64.2-1~fakesync1
ii  libstdc++6    10-20200411-0ubuntu1

cjs recommends no packages.

cjs suggests no packages.

-- no debconf information

Reply via email to