[Lucas Nussbaum]
> libsvn-dev depends on libneon27-gnutls-dev, while anjuta and
> subcommander build-depend on libneon27-dev, libsvn-dev. This causes
> those packages to FTBFS.
The reason for the Depends is to support static linking. As such, it
doesn't make sense to make the Depends more permissive; you don't want
to statically link the wrong neon. What I could do is _downgrade_ it
to a Suggests.
However, looking at both anjuta and subcommander:
anjuta doesn't need neon at all. Its configure script checks for neon
apparently due to an irrational belief that linking to libsvn will fail
if neon isn't present; the neon check is a precaution to ensure that
it's OK to enable svn support. Thus I'd rather see the anjuta
maintainer drop the Build-Depends and patch out the configure check,
trusting that libsvn-dev by itself will depend on whatever it needs.
(It is probably the same story for the Build-Depends on libdb4.6-dev,
but I didn't check that.)
Subcommander doesn't actually use neon, but it calls it in 2 places:
one to get the neon version to display in the Help/About box; two, it
calls ne_sock_exit() at shutdown time, apparently to avoid memory leak
detection warnings. (Hmmmm, where have I heard recently about fixing
Purify warning fixes....) Thus I think the neon "support" in
subcommander could be patched out as well.
So, both anjuta and subcommander "think" they need neon, but what they
really need is libsvn_ra, which talks to libsvn_ra_dav, which uses
neon. By removing neon detection from both, we would simplify our
dependency graph. I'm attaching (untested) patches.
--
Peter Samuelson | org-tld!p12n!peter | http://p12n.org/
diff -urN anjuta-2.4.1.orig/configure.in anjuta-2.4.1/configure.in
--- anjuta-2.4.1.orig/configure.in 2008-04-07 01:43:44.000000000 -0500
+++ anjuta-2.4.1/configure.in 2008-05-23 08:52:34.000000000 -0500
@@ -44,7 +44,6 @@
GNOMEBUILD_REQUIRED=0.2.0
GLADEUI_REQUIRED=3.2.0
LIBGRAPHVIZ_REQUIRED=1.0
-NEON_REQUIRED=0.24.5
SUBVERSION_REQUIRED=1.0.2
GTKSOURCEVIEW_REQUIRED=2.1.2
GTKSOURCEVIEW_GNOME_REQUIRED=2.14
@@ -80,7 +79,6 @@
AC_SUBST(GLADEUI_REQUIRED)
AC_SUBST(GLADEUI_SVN_REQUIRED)
AC_SUBST(LIBGRAPHVIZ_REQUIRED)
-AC_SUBST(NEON_REQUIRED)
AC_SUBST(SUBVERSION_REQUIRED)
AC_SUBST(GTKSOURCEVIEW_REQUIRED)
AC_SUBST(GTKSOURCEVIEW_GNOME_REQUIRED)
@@ -1024,40 +1022,6 @@
else
AC_MSG_RESULT([not found])
fi
-
- dnl -----------------------------------------
- dnl NEON. Required by subversion (devel)
- dnl------------------------------------------
-
- dnl Check for neon. It is required by subversion libs, but for
- dnl for some strange reason it's not in it's dependencies.
- dnl subversion plugin will be disabled if neon (devel) is not
- dnl installed, even if subversion (devel) is installed.
-
- NEON_CONFIGS="neon-config"
- AC_ARG_WITH(neon-config,
- [[ --with-neon-config=FILE Use the given path to neon-config when determining
- Neon configuration; defaults to "neon-config"]],
- [
- if test "$withval" != "yes" -a "$withval" != ""; then
- NEON_CONFIGS=$withval
- fi
- ])
- AC_MSG_CHECKING([for Neon])
- NEON_CONFIG=""
- for VALUE in $NEON_CONFIGS ; do
- if $VALUE --cflags > /dev/null 2>&1 ; then
- NEON_CONFIG=$VALUE
- break
- fi
- done
- if test $NEON_CONFIG ; then
- AC_MSG_RESULT([found])
- else
- AC_MSG_RESULT([not found])
- SVN_INCLUDE=""
- SVN_LIB=""
- fi
fi
dnl ------------------------------------------
@@ -1219,7 +1183,6 @@
echo "Building subversion plugin: ............................NO"
echo " Requires apr (>= 0.9.4); http://subversion.org"
echo " Requires apr-util (>= 0.9.4); http://subversion.org"
- echo " Requires neon (>= 0.24.5); http://subversion.org"
echo " Requires subversion (>= 1.0.2); http://subversion.org"
fi
diff -urN anjuta-2.4.1.orig/debian/control anjuta-2.4.1/debian/control
--- anjuta-2.4.1.orig/debian/control 2008-05-23 08:10:38.000000000 -0500
+++ anjuta-2.4.1/debian/control 2008-05-23 08:53:05.000000000 -0500
@@ -2,7 +2,7 @@
Section: gnome
Priority: optional
Maintainer: Rob Bradford <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>= 5.0.0), cdbs, chrpath, gnome-common, gtk-doc-tools, gnome-doc-utils, scrollkeeper, libglib2.0-dev, libgtk2.0-dev, liborbit-dev, libglade2-dev, libgnome2-dev, libgnomecanvas2-dev, libgnomeui-dev, libgnomeprint2.2-dev, libgnomeprintui2.2-dev, libvte-dev, libxml2-dev, libpango1.0-dev, libpcre3-dev, libdevhelp-1-dev, libgdl-1-dev, libgbf-1-dev, libgladeui-1-dev, libgraphviz-dev | libgraphviz3-dev, libneon27-dev | libneon26-dev, libsvn-dev, libgtksourceview2.0-dev (>= 2.2.0), binutils-dev, libwnck-dev, libxslt1-dev, automake1.9, autogen
+Build-Depends: debhelper (>= 5.0.0), cdbs, chrpath, gnome-common, gtk-doc-tools, gnome-doc-utils, scrollkeeper, libglib2.0-dev, libgtk2.0-dev, liborbit-dev, libglade2-dev, libgnome2-dev, libgnomecanvas2-dev, libgnomeui-dev, libgnomeprint2.2-dev, libgnomeprintui2.2-dev, libvte-dev, libxml2-dev, libpango1.0-dev, libpcre3-dev, libdevhelp-1-dev, libgdl-1-dev, libgbf-1-dev, libgladeui-1-dev, libgraphviz-dev | libgraphviz3-dev, libsvn-dev, libgtksourceview2.0-dev (>= 2.2.0), binutils-dev, libwnck-dev, libxslt1-dev, automake1.9, autogen
Standards-Version: 3.7.2
Package: anjuta
diff -urN subcommander-1.2.2.orig/configure.ac subcommander-1.2.2/configure.ac
--- subcommander-1.2.2.orig/configure.ac 2006-11-21 10:17:32.000000000 -0600
+++ subcommander-1.2.2/configure.ac 2008-05-23 08:43:21.000000000 -0500
@@ -249,55 +249,6 @@
##
-# check for neon
-#
-AC_MSG_CHECKING([for neon])
-AC_ARG_WITH(
- [neon],
- AC_HELP_STRING([--with-neon=DIR],[path to neon installation]),
- [
- neon_path=$withval
- with_neon="yes"
- ],[
- with_neon="no"
- ]
-)
-
-if test x$with_neon = xyes; then
- NEON_INCLUDES="-I$neon_path/include"
- NEON_LIBS="`$neon_path/bin/neon-config --libs`"
-else
- NEON_INCLUDES=""
- NEON_LIBS=""
-fi
-
-CPPFLAGS="$NEON_INCLUDES"
-
-AC_LANG(C++)
-AC_COMPILE_IFELSE(
- AC_LANG_PROGRAM(
- [[#include <neon/ne_socket.h>]],
- [[ne_sock_exit()]]
- ),
- [
- AC_MSG_RESULT([yes])
- AC_MSG_RESULT([ headers $NEON_INCLUDES])
- AC_MSG_RESULT([ libraries $NEON_LIBS])
- ],[
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([try setting --with-neon])
- ]
-)
-
-AC_SUBST(NEON_INCLUDES)
-AC_SUBST(NEON_LIBS)
-#
-# end check for neon
-##
-
-
-
-##
# check for openssl
#
AC_MSG_CHECKING([for openssl])
diff -urN subcommander-1.2.2.orig/debian/control subcommander-1.2.2/debian/control
--- subcommander-1.2.2.orig/debian/control 2008-05-23 08:17:56.000000000 -0500
+++ subcommander-1.2.2/debian/control 2008-05-23 08:50:01.000000000 -0500
@@ -4,7 +4,7 @@
Maintainer: Andreas Fester <[EMAIL PROTECTED]>
Uploaders: Loic Minier <[EMAIL PROTECTED]>
Build-Depends: debhelper (>> 5.0.0), dpatch, libqt3-mt-dev (>> 3.3),
- libboost-dev, libapr1-dev, libdb4.6-dev, libsvn-dev, libneon27-dev,
+ libboost-dev, libapr1-dev, libdb4.6-dev, libsvn-dev,
libssl-dev, xsltproc, docbook-xsl, autotools-dev, dpkg-dev (>= 1.13.19)
Standards-Version: 3.7.2
diff -urN subcommander-1.2.2.orig/subcommander/Makefile.am subcommander-1.2.2/subcommander/Makefile.am
--- subcommander-1.2.2.orig/subcommander/Makefile.am 2006-10-03 10:11:38.000000000 -0500
+++ subcommander-1.2.2/subcommander/Makefile.am 2008-05-23 08:43:42.000000000 -0500
@@ -39,7 +39,7 @@
## by apr_time_from_sec
AM_CPPFLAGS = -DQT_THREAD_SUPPORT @APR_CPPFLAGS@ @STLPORT_INCLUDES@ -I.. @QT_INCLUDES@ \
- @SVN_INCLUDES@ @APR_INCLUDES@ @APU_INCLUDES@ @NEON_INCLUDES@ \
+ @SVN_INCLUDES@ @APR_INCLUDES@ @APU_INCLUDES@ \
@SSL_INCLUDES@ @BOOST_INCLUDES@ -D__STDC_CONSTANT_MACROS=1
bin_PROGRAMS = subcommander
@@ -48,7 +48,7 @@
-lz @APR_LIBS@ @APU_LIBS@ @SVN_LIBS@ -lsvn_client-1 -lsvn_subr-1 \
-lsvn_ra-1 -lsvn_wc-1 -lsvn_delta-1 -lsvn_diff-1 -lsvn_ra_dav-1 \
-lsvn_ra_local-1 -lsvn_ra_svn-1 -lsvn_repos-1 -lsvn_fs-1 \
- -lsvn_fs_fs-1 @STLPORT_LIBS@ @NEON_LIBS@
+ -lsvn_fs_fs-1 @STLPORT_LIBS@
subcommander_DEPENDENCIES = ../sublib/libsublib.a ../svn/libsvn.a ../util/libutil.a
diff -urN subcommander-1.2.2.orig/subcommander/subcommander.cpp subcommander-1.2.2/subcommander/subcommander.cpp
--- subcommander-1.2.2.orig/subcommander/subcommander.cpp 2006-09-24 08:37:47.000000000 -0500
+++ subcommander-1.2.2/subcommander/subcommander.cpp 2008-05-23 08:44:25.000000000 -0500
@@ -26,15 +26,11 @@
#include <qapplication.h>
#include <qstylefactory.h>
-// neon
-#include <neon/ne_socket.h>
-#include <neon/ne_utils.h>
-
// openssl
#include <openssl/evp.h>
#include <openssl/err.h>
-// cleanup neon/ssl stuff to avoid a lot of noise when running with
+// cleanup ssl stuff to avoid a lot of noise when running with
// memory leak detection.
void exit_ssl()
@@ -47,11 +43,6 @@
ERR_free_strings();
}
-void exit_neon()
-{
- ne_sock_exit();
-}
-
int main( int argc, char* argv[] )
@@ -95,9 +86,6 @@
#if !defined(Q_WS_X11)
QApplication::setStyle( new MacStyle() );
#endif // Q_WS_X11
-
- // about dialog
- setNeonVersion( ne_version_string() );
}
catch( sc::Exception& e )
{
@@ -146,7 +134,6 @@
config.save();
exit_ssl();
- exit_neon();
TargetRepository::teardown();
stopStackProcess();
diff -urN subcommander-1.2.2.orig/sublib/AboutDialog.cpp subcommander-1.2.2/sublib/AboutDialog.cpp
--- subcommander-1.2.2.orig/sublib/AboutDialog.cpp 2006-09-14 10:45:48.000000000 -0500
+++ subcommander-1.2.2/sublib/AboutDialog.cpp 2008-05-23 08:47:13.000000000 -0500
@@ -277,20 +277,6 @@
#endif
"<tr><td align=center valign=bottom colspan=2> * * * </td></tr>";
- if( getLongAppName() == "subcommander" )
- {
- about2 +=
- "<tr>"
- "<td align=right>";
- about2 += getNeonVersion();
- about2 +=
- "</td>"
- "<td align=left>" "http://www.webdav.org" "</td>"
- "</tr>"
- "<tr><td align=center valign=bottom colspan=2> * * * </td></tr>";
- }
-
-
about2 +=
"<tr>"
"<td align=right>";
diff -urN subcommander-1.2.2.orig/sublib/Utility.cpp subcommander-1.2.2/sublib/Utility.cpp
--- subcommander-1.2.2.orig/sublib/Utility.cpp 2006-11-12 05:01:51.000000000 -0600
+++ subcommander-1.2.2/sublib/Utility.cpp 2008-05-23 08:44:54.000000000 -0500
@@ -201,15 +201,3 @@
// Sun Aug 27 16:32:54 2006
return _q("ddd MMM dd hh:mm:ss yyyy");
}
-
-static const char* neon_version = "";
-
-void setNeonVersion( const char* v )
-{
- neon_version = v;
-}
-
-QString getNeonVersion()
-{
- return QString(neon_version).left(12);
-}
diff -urN subcommander-1.2.2.orig/sublib/Utility.h subcommander-1.2.2/sublib/Utility.h
--- subcommander-1.2.2.orig/sublib/Utility.h 2006-09-14 10:45:48.000000000 -0500
+++ subcommander-1.2.2/sublib/Utility.h 2008-05-23 08:44:45.000000000 -0500
@@ -33,7 +33,4 @@
QString getDateFormat();
-void setNeonVersion( const char* v );
-QString getNeonVersion();
-
#endif // _SC_UTILITY_H