Bug#1020211: emacspeak: FTBFS: make[4]: *** [Makefile:322: emacspeak-loaddefs.el] Error 255

2022-10-02 Thread Paul Gevers

Control: fixed -1 53.0+dfsg-2

Hi,

On Sun, 18 Sep 2022 08:52:28 +0200 Lucas Nussbaum  wrote:

During a rebuild of all packages in sid, your package failed to build
on amd64.


While this is worked around in the version in unstable, the underlying 
problem isn't. The problem is that emacs 28 has a new feature called 
native compilation. It's currently being investigated by the emacs 
toolchain maintainers how to work around properties of native 
compilation in the context of a distribution (e.g. on IRC in #d-emacs). 
Until that's done, emacs 28 will not migrate to testing, hence this 
issue (and the failure to install emacspeak in unstable, which is 
currently blocking migration of emacspeak itself) is not affecting 
testing (yet).


As emacspeak isn't using the default tool (dh-elpa) yet, we may have to 
fix the code that runs during installation ourselves, but until the 
emacs maintainers have figured out what's best in general, I propose to 
wait with fixing it in emacspeak.


Migrating to use dh-elpa will probably mean we don't need to do anything 
in emacspeak to fix the native compilation problem ourselves, but last 
time I looked into that, it didn't look trivial for emacspeak. If 
anybody wants to invest their time into the dh-elpa migration, I would 
applaud that.


For now, keep an eye on it, prevent removal of emacspeak from testing, 
and how we don't have to do too much to fix the situation once emacs is 
ready to migrate.


Paul


OpenPGP_signature
Description: OpenPGP digital signature


Bug#1020211: emacspeak: FTBFS: make[4]: *** [Makefile:322: emacspeak-loaddefs.el] Error 255

2022-09-18 Thread Lucas Nussbaum
Source: emacspeak
Version: 53.0+dfsg-1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20220917 ftbfs-bookworm

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.


Relevant part (hopefully):
> make[2]: Entering directory '/<>'
> emacs -batch -q -no-site-file  -f package-initialize  --eval '(setq 
> file-name-handler-alist nil gc-cons-threshold 6400  
> load-source-file-function  nil)'   -l ./emacspeak-load-path.el  \
> -l ./emacspeak-autoload.el  \
> -f emacspeak-auto-generate-autoloads
> Eager macro-expansion failure: (error "Cannot find suitable directory for 
> output in ‘native-comp-eln-load-path’")
> Eager macro-expansion failure: (error "Cannot find suitable directory for 
> output in ‘native-comp-eln-load-path’")
> Debugger entered--Lisp error: (error "Cannot find suitable directory for 
> output in ‘nati...")
>   error("Cannot find suitable directory for output in `nati...")
>   comp-trampoline-compile(funcall-interactively)
>   comp-subr-trampoline-install(funcall-interactively)
>   ad-add-advice(funcall-interactively (emacspeak nil t (advice lambda nil 
> "Set emacspeak  interactive flag if there is an adv..." (let 
> ((ems-called-interactively-p ems-called-interactively-p)) (when 
> (ems-record-interactive-p (ad-get-arg 0)) (setq ems-called-interactively-p 
> (ad-get-arg 0))) ad-do-it))) around nil)
>   ad-preactivate-advice(funcall-interactively (emacspeak nil t (advice lambda 
> nil "Set emacspeak  interactive flag if there is an adv..." (let 
> ((ems-called-interactively-p ems-called-interactively-p)) (when 
> (ems-record-interactive-p (ad-get-arg 0)) (setq ems-called-interactively-p 
> (ad-get-arg 0))) ad-do-it))) around nil)
>   #f(compiled-function (function args  body) "Define a piece of advice 
> for FUNCTION (a symbol).\nThe syntax of `defadvice' is as follows:\n\n  
> (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] FLAG...)\n
> [DOCSTRING] [INTERACTIVE-FORM]\nBODY...)\n\nFUNCTION ::= Name of the 
> function to be advised.\nCLASS ::= `before' | `around' | `after' | 
> `activation' | `deactivation'.\nNAME ::= Non-nil symbol that names this piece 
> of advice.\nPOSITION ::= `first' | `last' | NUMBER.  Optional, defaults to 
> `first',\nsee also `ad-add-advice'.\nARGLIST ::= An optional argument 
> list to be used for the advised function\ninstead of the argument list of 
> the original.  The first one found in\nbefore/around/after-advices will 
> be used.\nFLAG ::= `protect'|`disable'|`activate'|`compile'|`preactivate'.\n  
>   All flags can be specified with unambiguous initial substrings.\nDOCSTRING 
> ::= Optional documentation for this piece of advice.\nINTERACTIVE-FORM ::= 
> Optional interactive form to be used for the advised\nfunction.  The 
> first one found in before/around/after-advices will be used.\nBODY ::= Any 
> s-expression.\n\nSemantics of the various flags:\n`protect': The piece of 
> advice will be protected against non-local exits in\nany code that precedes 
> it.  If any around-advice of a function is protected\nthen automatically all 
> around-advices will be protected (the complete onion).\n\n`activate': All 
> advice of FUNCTION will be activated immediately if\nFUNCTION has been 
> properly defined prior to this application of `defadvice'.\n\n`compile': In 
> conjunction with `activate' specifies that the resulting\nadvised function 
> should be compiled.\n\n`disable': The defined advice will be disabled, hence, 
> it will not be used\nduring activation until somebody enables 
> it.\n\n`preactivate': Preactivates the advised FUNCTION at 
> macro-expansion/compile\ntime.  This generates a compiled advised definition 
> according to the current\nadvice state that will be used during activation if 
> appropriate.  Only use\nthis if the `defadvice' gets actually 
> compiled.\n\nusage: (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] 
> FLAG...)\n  [DOCSTRING] [INTERACTIVE-FORM]\n  BODY...)" 
> #)(funcall-interactively (around emacspeak pre 
> act comp) "Set emacspeak  interactive flag if there is an adv..." (let 
> ((ems-called-interactively-p ems-called-interactively-p)) (when 
> (ems-record-interactive-p (ad-get-arg 0)) (setq ems-called-interactively-p 
> (ad-get-arg 0))) ad-do-it))
>   (defadvice funcall-interactively (around emacspeak pre act comp) "Set 
> emacspeak  interactive flag if there is an adv..." (let 
> ((ems-called-interactively-p ems-called-interactively-p)) (when 
> (ems-record-interactive-p (ad-get-arg 0)) (setq ems-called-interactively-p 
> (ad-get-arg 0))) ad-do-it))
>   command-line-1(("-f" "package-initialize" "--eval" "(setq 
> file-name-handler-alist nil gc-cons-threshol..." "-l" 
> "./emacspeak-load-path.el" "-l" "./emacspeak-autoload.el" "-f" 
> "emacspeak-auto-generate-autoloads"))
>   command-line()
>   normal-top-level()
> 
> make[4]: *** [Makefile:322: emacspeak-loaddefs.el] Error 255


The