[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#682104: control.m4 produces syntax error in control



Package: src:gcc-4.7
Version: 4.7.1-5

I was trying to build a cross-compiler, and it kept failing because of
a syntax error in debian/control at line 41:

> Package: libgcc1-dbg-armel-cross
> Architecture: all
> Section: debug
> Priority: extra
> Depends: gcc-4.7-arm-linux-gnueabi-base (= ${gcc:Version}), libgcc1-armel-cross (= ${gcc:EpochVersion}), ${misc:Depends}
> dnldnl
> Description: GCC support library (debug symbols)
>  Debug symbols for the GCC support library.
>  .
>  This package contains files for armel architecture, for use in cross-compile
>  environment.

Notice the "dnldnl".  This is caused by the corresponding part of
debian/control.m4:

> Package: libgcc1-dbg`'LS
> Architecture: ifdef(`TARGET',`all',`any')
> Section: debug
> Priority: extra
> Depends: BASEDEP, libgcc1`'LS (= ${gcc:EpochVersion}), ${misc:Depends}
> ifdef(`TARGET',`dnl',`dnl
> ifdef(`MULTIARCH',`Multi-Arch: same
> ')dnl
> Provides: libgcc1-dbg-armel [armel], libgcc1-dbg-armhf [armhf]
> ')dnl
> Description: GCC support library (debug symbols)`'ifdef(`TARGET)',` (TARGET)', `')
>  Debug symbols for the GCC support library.
> ifdef(`TARGET', `dnl
>  .
>  This package contains files for TARGET architecture, for use in cross-compile
>  environment.
> ')`'dnl

If TARGET is defined, then the part after Depends: turns into

ifdef(`target',`dnl')dnl

Which expands to

dnldnl

The solution is to EITHER delete the first quoted dnl, OR move the
final dnl inside the macro and closing quote.  Having them both there
causes problems.


Reply to: