Bug#358131: yate: FTBFS: compile error

Matej Vela vela at debian.org
Sat Jul 1 12:08:52 UTC 2006


block 358131 by 376249
tag 358131 patch
thanks

stigge at antcom.de writes:

> /usr/include/ptlib/unix/ptlib/pdirect.h:78: error: expected unqualified-id before 'protected'
> /usr/include/ptlib/unix/ptlib/pdirect.h:80: error: expected constructor, destructor, or type conversion before '*' token
> /usr/include/ptlib/unix/ptlib/config.h:53: error: expected unqualified-id before 'public'
> /usr/include/ptlib/unix/ptlib/config.h:55: error: expected class-name before '(' token
> /usr/include/ptlib/unix/ptlib/config.h:57: error: expected unqualified-id before 'protected'

These are private ptlib headers; the reason they are showing up is the
following snippet in configure.in:

   188  if [[ "$verpw" '<' "1.6.0" ]]; then
   189      PWLIB_INC="-I$ac_cv_use_pwlib/include/ptlib/unix/ptlib -I$ac_cv_use_pwlib/include/ptlib/unix $PWLIB_INC"
   190  fi

The lexicographical comparison obviously fails with ptlib 1.10
(ptlib.dpatch attached).

Once that's fixed, we get this:

> g++ -Wall   -I.. -I.. -O2 -fno-check-new  -fno-exceptions -fPIC -DHAVE_GCC_FORMAT_CHECK  -export-dynamic -shared -Wl,--retain-symbols-file,/dev/null -L.. -lyate -o faxchan.yate -I/usr/include/spandsp -I/usr/include faxchan.cpp -L/usr/lib -lspandsp -ltiff
> ../telengine.h:55: error: declaration of C function 'bool TelEngine::abortOnBug(bool)' conflicts with
> ../telengine.h:49: error: previous declaration 'void TelEngine::abortOnBug()' here
[...]
> faxchan.cpp: At global scope:
> faxchan.cpp:390: error: expected `}' at end of input

... but that's a bug in spandsp (#376249).

Finally, once spandsp is fixed, we get this:

> g++ -Wall   -I.. -I.. -O2 -fno-check-new  -fno-exceptions -fPIC -DHAVE_GCC_FORMAT_CHECK  -export-dynamic -shared -Wl,--retain-symbols-file,/dev/null -L.. -lyate -o faxchan.yate -I/usr/include/spandsp -I/usr/include faxchan.cpp -L/usr/lib -lspandsp -ltiff
> faxchan.cpp: In constructor 'FaxChan::FaxChan(const char*, bool, bool, const char*)':
> faxchan.cpp:198: error: 'fax_set_local_ident' was not declared in this scope
> faxchan.cpp:200: error: 'fax_set_rx_file' was not declared in this scope
> faxchan.cpp:202: error: 'fax_set_tx_file' was not declared in this scope
> faxchan.cpp:205: error: 'fax_set_phase_e_handler' was not declared in this scope
> faxchan.cpp:206: error: 'fax_set_phase_d_handler' was not declared in this scope
> faxchan.cpp:207: error: 'fax_set_phase_b_handler' was not declared in this scope
> faxchan.cpp:208: error: 'struct t30_state_t' has no member named 'verbose'
> faxchan.cpp: In member function 'void FaxChan::rxBlock(void*, int)':
> faxchan.cpp:244: error: 'fax_rx_process' was not declared in this scope
> faxchan.cpp:247: error: 'fax_tx_process' was not declared in this scope
> faxchan.cpp: In member function 'void FaxChan::phaseD(int)':
> faxchan.cpp:283: error: 'fax_get_transfer_statistics' was not declared in this scope
> faxchan.cpp:293: error: 'fax_get_local_ident' was not declared in this scope
> faxchan.cpp:296: error: 'fax_get_far_ident' was not declared in this scope

... which is due to changes in the fax API in spandsp 0.0.2pre22.
Upstream CVS doesn't have a fix yet, and simply disables faxchan
(faxchan.dpatch attached).

Thanks,

Matej
-------------- next part --------------
#! /bin/sh /usr/share/dpatch/dpatch-run
## ptlib.dpatch by Matej Vela <vela at debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: The lexicographical version check fails with ptlib 1.10 (#358131).

@DPATCH@
diff -urNad yate-0.8.7+cvs20050604~/configure.in yate-0.8.7+cvs20050604/configure.in
--- yate-0.8.7+cvs20050604~/configure.in
+++ yate-0.8.7+cvs20050604/configure.in
@@ -185,9 +185,9 @@
 incpw="$ac_cv_use_pwlib/include/ptlib.h"
 libpw="$ac_cv_use_pwlib/lib/libpt.so"
 PWLIB_INC="-I$ac_cv_use_pwlib/include/ptlib"
-if [[ "$verpw" '<' "1.6.0" ]]; then
-    PWLIB_INC="-I$ac_cv_use_pwlib/include/ptlib/unix/ptlib -I$ac_cv_use_pwlib/include/ptlib/unix $PWLIB_INC"
-fi
+case $verpw in
+    [0.*|1.[0-5].*]) PWLIB_INC="-I$ac_cv_use_pwlib/include/ptlib/unix/ptlib -I$ac_cv_use_pwlib/include/ptlib/unix $PWLIB_INC";;
+esac
 if [[ -f "$incpw" -a -f "$libpw" ]]; then
     HAVE_PWLIB=installed
     PWLIB_LIB="-L$ac_cv_use_pwlib/lib -lpt"
diff -urNad yate-0.8.7+cvs20050604~/configure yate-0.8.7+cvs20050604/configure
--- yate-0.8.7+cvs20050604~/configure
+++ yate-0.8.7+cvs20050604/configure
@@ -5043,9 +5043,9 @@
 incpw="$ac_cv_use_pwlib/include/ptlib.h"
 libpw="$ac_cv_use_pwlib/lib/libpt.so"
 PWLIB_INC="-I$ac_cv_use_pwlib/include/ptlib"
-if [ "$verpw" '<' "1.6.0" ]; then
-    PWLIB_INC="-I$ac_cv_use_pwlib/include/ptlib/unix/ptlib -I$ac_cv_use_pwlib/include/ptlib/unix $PWLIB_INC"
-fi
+case $verpw in
+    0.*|1.[0-5].*) PWLIB_INC="-I$ac_cv_use_pwlib/include/ptlib/unix/ptlib -I$ac_cv_use_pwlib/include/ptlib/unix $PWLIB_INC";;
+esac
 if [ -f "$incpw" -a -f "$libpw" ]; then
     HAVE_PWLIB=installed
     PWLIB_LIB="-L$ac_cv_use_pwlib/lib -lpt"
-------------- next part --------------
#! /bin/sh /usr/share/dpatch/dpatch-run
## faxchan.dpatch by Matej Vela <vela at debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: faxchan is incompatible with the current spandsp API; upstream
## DP: disabled it, so do we (#358131).

@DPATCH@
diff -urNad yate-0.8.7+cvs20050604~/modules/Makefile.in yate-0.8.7+cvs20050604/modules/Makefile.in
--- yate-0.8.7+cvs20050604~/modules/Makefile.in
+++ yate-0.8.7+cvs20050604/modules/Makefile.in
@@ -45,7 +45,7 @@
 PROGS := $(PROGS) iaxchan.yate
 endif
 
-ifneq (@HAVE_SPANDSP@,no)
+ifneq (no,no)
 PROGS := $(PROGS) faxchan.yate
 endif
 


More information about the Pkg-voip-maintainers mailing list