[Pkg-zsh-devel] Bug#776964: Headers installed by zsh-dev packages miss critical pieces

ZyX kp-pav at yandex.ru
Thu Jul 16 04:59:26 UTC 2015



04.02.2015, 07:49, "ZyX" <kp-pav at yandex.ru>:
> 04.02.2015, 01:58, "Frank Terbeck" <ft at bewatermyfriend.org>:
>>  Hey there!
>>
>>  ZyX wrote:
>>  [...]
>>>   To use zsh headers in some module at least `config.h` file is needed
>>
>>  Finally, someone who actually wants to use zsh's facilities to load
>>  third party modules. Yay. ;)
>>>   in addition to those already present in the package. `config.h` files
>>>   contains defines guessed by ./configure script and including it prior
>>>   to `zsh.h` is the only sane variant to include `zsh.h` (insane variant
>>>   is using module’s own configure script which will create those
>>>   defines). Without `config.h` including `zsh.h` will fail due to
>>>   missing defines, and even if it was not failing it would make #include
>>>   <zsh.h> do the wrong thing because of the bits like
>>
>>  [...]
>>
>>  I agree.
>>>   (configure.h-driven definition of zlong and zulong which has the potential of breaking ABI compatibility in some cases).
>>>
>>>   In addition to this file it is good to have a patched `zsh.mdh` file
>>>   which glues together all zsh includes and is a single entry point.
>>>   Patch needed to include this file in the distribution may be performed
>>>   with the following script:
>>>
>>>           for file in Src/{zsh.mdh,*.h} ; do
>>
>>  We'd probably want to do that in a POSIX compatible way, so we'd refrain
>>  from using brace expansion but that's just cosmetics.
>>>                   sed -i 's@\.\./config\.h at config.h@' "$file"
>>>                   sed -i 's@#\(\s*\)include "\([^"]\+\)"@#\1include <zsh/\2>@' "$file"
>>
>>  Sed's -i option requires GNU sed. But then, I don't know if debian even
>>  ships another version of sed. ...I think it doesn't; but I also don't
>>  know about the policy with respect to non-POSIX features in packaging.
>>>           done
>>>
>>>   . I am doing this in a Gentoo ebuild and the result works just fine.
>>
>>  Yeah, I think this could work.
>>
>>  Do you think it would make sense to include the other header files with
>>  zsh-dev as well? Like "zshterm.h" etc?
>
> In my ebuild I am simply doins all *.h files from Src, passed throught these
> filters, so zshterm.h gets caught as well. But I think that all of them are
> #included by zsh.mdh, at least zshterm.h does (zsh.mdh includes zsh_system.h
> and that includes zshterm.h). Did not know you do not do the same thing (I
> mean, adding Src/*.h).
>
>>  Regards, Frank

Any progress on this? Gentoo have fixed their instance of the similar bug.



More information about the Pkg-zsh-devel mailing list