# Process this file with autoconf to produce a configure script
AC_PREREQ(2.54)
-dnl ===========================================================================
-
# Package name and version number, (as distinct from shared library version)
AC_INIT(graphviz, 2.15)
-# libtool shared library version
+dnl ===========================================================================
+
+# libtool shared library version for main libs (cdt, graph, gvc)
# Increment if the interface has additions, changes, removals.
LT_CURRENT=4
VERSION_INFO="$LT_CURRENT:$LT_REVISION:$LT_AGE"
AC_SUBST(VERSION_INFO)
-
dnl ===========================================================================
-# plugin version
+# libtool shared library version for plugins
# Increment if the interface has additions, changes, removals.
GVPLUGIN_CURRENT=5
+# Increment any time the source changes; set to
+# 0 if you increment CURRENT
+GVPLUGIN_REVISION=0
+
+# Increment if any interfaces have been added; set to 0
+# if any interfaces have been removed. removal has
+# precedence over adding, so set to 0 if both happened.
+GVPLUGIN_AGE=0
+
+GVPLUGIN_VERSION_INFO="$GVPLUGIN_CURRENT:$GVPLUGIN_REVISION:$GVPLUGIN_AGE"
+AC_SUBST(GVPLUGIN_VERSION_INFO)
+
dnl ===========================================================================
+
AC_CONFIG_SRCDIR(configure.ac)
AC_CONFIG_AUX_DIR(config)
AC_SUBST(Z_LIBS)
dnl -----------------------------------
-dnl DIGCOLA (enabled by default)
+dnl DIGCOLA
+
AC_ARG_WITH(digcola,
[AC_HELP_STRING([--with-digcola],
[with DIGCOLA features in neato layout engine])])
+
if test "x$with_digcola" != "xno"; then
AC_DEFINE_UNQUOTED(DIGCOLA,1,[Define if you want DIGCOLA])
else
fi
dnl -----------------------------------
-dnl IPSEPCOLA (disable by default)
+dnl IPSEPCOLA
AC_ARG_WITH(ipsepcola,
[AC_HELP_STRING([--with-ipsepcola],
[with IPSEPCOLA features in neato layout engine])])
-if test "x$with_digcola" = "xno"; then
- with_ipsepcola=no
+
+if test "x$with_digcola" != "xno"; then
+ with_ipsepcola=yes
fi
-if test "x$with_ipsepcola" != "xyes"; then
- IPSEPCOLA_INCLUDES=
- IPSEPCOLA_LIBS=
-else
- AC_MSG_WARN(Optional IPSEPCOLA is enabled)
+
+if test "x$with_ipsepcola" = "xyes"; then
AC_DEFINE_UNQUOTED(IPSEPCOLA,1,[Define if you want IPSEPCOLA])
IPSEPCOLA_INCLUDES='-I$(top_srcdir)/lib/vpsc'
IPSEPCOLA_LIBS='$(top_builddir)/lib/vpsc/libvpsc_C.la -lstdc++'
GV_PATH_MING
AM_CONDITIONAL(WITH_MING, [ test x"$MAKESWF" != x ])
-#AC_ARG_WITH(libming,
-# [AC_HELP_STRING([--with-libming],
-# [use libming library])])
-#
-#### default is to build with libming
-#if test "x$with_libming" != "xno"; then
-# with_libming=yes
-#fi
-#
-#if test "x$with_libming" = "xyes"; then
-#PKG_CHECK_MODULES(LIBMING, [libming >= 0.4],
-# [HAVE_LIBMING=1
-# AC_DEFINE_UNQUOTED(HAVE_LIBMING,1,
-# [Define if you have the libming library for SWF support])],
-# [AC_MSG_WARN(libming library not available)])
-#AC_SUBST(LIBMING_CFLAGS)
-#AC_SUBST(LIBMING_LIBS)
-#fi
-#AM_CONDITIONAL(WITH_LIBMING, [test "x$HAVE_LIBMING" != "x"])
+AC_ARG_WITH(libming,
+ [AC_HELP_STRING([--with-libming],
+ [use libming library])])
+
+### default is to build with libming
+if test "x$with_libming" != "xno"; then
+ with_libming=yes
+fi
+
+if test "x$with_libming" = "xyes"; then
+PKG_CHECK_MODULES(LIBMING, [libming >= 0.4],
+ [HAVE_LIBMING=1
+ AC_DEFINE_UNQUOTED(HAVE_LIBMING,1,
+ [Define if you have the libming library for SWF support])],
+ [AC_MSG_WARN(libming library not available)])
+AC_SUBST(LIBMING_CFLAGS)
+AC_SUBST(LIBMING_LIBS)
+fi
+AM_CONDITIONAL(WITH_LIBMING, [test "x$HAVE_LIBMING" != "x"])
dnl -----------------------------------
dnl INCLUDES and LIBS for GD
%define MYLIBGD --with-mylibgd
%define MING --without-ming
%define PANGOCAIRO --without-pangocairo
-%define DEVIL --without-devil
+%define DEVIL 0
+%define MING 0
%define GDK_PIXBUF --without-gdk-pixbuf
# SuSE uses a different mechanism to generate BuildRequires
BuildRequires: cairo-devel >= 1.1.10 pango-devel gmp-devel lua-devel gtk2-devel libgnomeui-devel
%endif
%if "%fedora" >= "7"
+%define DEVIL 1
%define MYLIBGD --without-mylibgd
%define GDK_PIXBUF --with-gdk-pixbuf
-%define DEVIL --with-devil
BuildRequires: gd gd-devel perl-devel DevIL-devel
%endif
%endif
%{_datadir}/graphviz/lefty
%exclude %{_libdir}/graphviz/*/*
%exclude %{_libdir}/graphviz/libgvplugin_gd.*
+%if %{DEVIL}
%exclude %{_libdir}/graphviz/libgvplugin_devil.*
+%endif
+%if %{MING}
+%exclude %{_libdir}/graphviz/libgvplugin_ming.*
+%endif
#-- graphviz-gd rpm --------------------------------------------------
%package gd
%{_libdir}/graphviz/libgvplugin_gd.so.*
#-- graphviz-devil rpm --------------------------------------------------
+%if %{DEVIL}
%package devil
Group: Applications/Multimedia
Summary: Graphviz plugin for renderers based on DevIL
%files devil
%{_libdir}/graphviz/libgvplugin_devil.so.*
+%endif
+
+#-- graphviz-ming rpm --------------------------------------------------
+%if %{MING}
+%package ming
+Group: Applications/Multimedia
+Summary: Graphviz plugin for flash renderer based on ming
+Requires: graphviz = %{version}-%{release}
+Requires(post): %{_bindir}/dot /sbin/ldconfig
+Requires(postun): %{_bindir}/dot /sbin/ldconfig
+
+%description ming
+Graphviz plugin for -Tswf (flash) renderer based on ming.
+
+# run "dot -c" to generate plugin config in %{_libdir}/graphviz/config
+%post ming
+/sbin/ldconfig
+%{_bindir}/dot -c
+
+%postun ming
+/sbin/ldconfig
+[ -x %{_bindir}/dot ] && %{_bindir}/dot -c || :
+
+%files ming
+%{_libdir}/graphviz/libgvplugin_ming.so.*
+%endif
#-- graphviz-sharp rpm --------------------------------------------
%if %{SHARP}
%if ! %{TCL}
%define NO_TCL --disable-tcl
%endif
+%if ! %{DEVIL}
+%define NO_DEVIL --without-devil
+%endif
+%if ! %{MING}
+%define NO_MING --without-ming
+%endif
# XXX ix86 only used to have -ffast-math, let's use everywhere
%{expand: %%define optflags %{optflags} -ffast-math}
--with-x \
--disable-static \
--disable-dependency-tracking \
- %{MYLIBGD} %{IPSEPCOLA} %{MING} %{PANGOCAIRO} %{DEVIL} %{GDK_PIXBUF} \
- %{?NO_SHARP} %{?NO_GUILE} %{?NO_IO} %{?NO_JAVA} %{?NO_LUA} %{?NO_OCAML} %{?NO_PERL} %{?NO_PHP} %{?NO_PYTHON} %{?NO_RUBY} %{?NO_TCL}
+ %{MYLIBGD} %{IPSEPCOLA} %{PANGOCAIRO} %{GDK_PIXBUF} \
+ %{?NO_SHARP} %{?NO_GUILE} %{?NO_IO} %{?NO_JAVA} %{?NO_LUA} %{?NO_OCAML} %{?NO_PERL} %{?NO_PHP} %{?NO_PYTHON} %{?NO_RUBY} %{?NO_TCL} %{?NO_DEVIL} %{?NO_MING}
make %{?_smp_mflags}
%install
gvrender_core_map.c \
gvloadimage_core.c
-libgvplugin_core_la_LDFLAGS = -version-info @VERSION_INFO@ --no-undefined
+libgvplugin_core_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ --no-undefined
libgvplugin_core_la_SOURCES = $(libgvplugin_core_C_la_SOURCES)
libgvplugin_core_la_LIBADD =
gvplugin_devil.c \
gvdevice_devil.c
-libgvplugin_devil_la_LDFLAGS = -version-info @VERSION_INFO@ -no-undefined
+libgvplugin_devil_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ -no-undefined
libgvplugin_devil_la_SOURCES = $(libgvplugin_devil_C_la_SOURCES)
libgvplugin_devil_la_LIBADD = @DEVIL_LIBS@
libgvplugin_dot_layout_C_la_LIBADD = \
$(top_builddir)/lib/dotgen/libdotgen_C.la
-libgvplugin_dot_layout_la_LDFLAGS = -version-info @VERSION_INFO@ --no-undefined
+libgvplugin_dot_layout_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ --no-undefined
libgvplugin_dot_layout_la_SOURCES = $(libgvplugin_dot_layout_C_la_SOURCES)
libgvplugin_dot_layout_la_LIBADD = $(libgvplugin_dot_layout_C_la_LIBADD) \
$(top_builddir)/lib/gvc/libgvc.la \
gvloadimage_gd.c \
gvdevice_gd.c
-libgvplugin_gd_la_LDFLAGS = -version-info @VERSION_INFO@ --no-undefined
+libgvplugin_gd_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ --no-undefined
libgvplugin_gd_la_SOURCES = $(libgvplugin_gd_C_la_SOURCES)
if WITH_MYLIBGD
libgvplugin_gd_la_LIBADD = \
gvplugin_gdk_pixbuf.c \
gvdevice_gdk_pixbuf.c
-libgvplugin_gdk_pixbuf_la_LDFLAGS = -version-info @VERSION_INFO@ -no-undefined
+libgvplugin_gdk_pixbuf_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ -no-undefined
libgvplugin_gdk_pixbuf_la_SOURCES = $(libgvplugin_gdk_pixbuf_C_la_SOURCES)
libgvplugin_gdk_pixbuf_la_LIBADD = @GDK_PIXBUF_LIBS@
interface.c \
callbacks.c
-libgvplugin_gtk_la_LDFLAGS = -version-info @VERSION_INFO@ -no-undefined
+libgvplugin_gtk_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ -no-undefined
libgvplugin_gtk_la_SOURCES = $(libgvplugin_gtk_C_la_SOURCES)
libgvplugin_gtk_la_LIBADD = $(GTK_LIBS) $(GNOMEUI_LIBS)
gvplugin_ming.c \
gvrender_ming.c
-libgvplugin_ming_la_LDFLAGS = -version-info @VERSION_INFO@ -no-undefined
+libgvplugin_ming_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ -no-undefined
libgvplugin_ming_la_SOURCES = $(libgvplugin_ming_C_la_SOURCES)
libgvplugin_ming_la_LIBADD = @MING_LIBS@ @MATH_LIBS@
$(top_builddir)/lib/fdpgen/libfdpgen_C.la \
$(top_builddir)/lib/circogen/libcircogen_C.la
-libgvplugin_neato_layout_la_LDFLAGS = -version-info @VERSION_INFO@ --no-undefined
+libgvplugin_neato_layout_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ --no-undefined
libgvplugin_neato_layout_la_SOURCES = $(libgvplugin_neato_layout_C_la_SOURCES)
libgvplugin_neato_layout_la_LIBADD = $(libgvplugin_neato_layout_C_la_LIBADD) \
$(top_builddir)/lib/gvc/libgvc.la \
gvtextlayout_pango.c \
gvloadimage_pango.c
-libgvplugin_pango_la_LDFLAGS = -version-info @VERSION_INFO@ -no-undefined
+libgvplugin_pango_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ -no-undefined
libgvplugin_pango_la_SOURCES = $(libgvplugin_pango_C_la_SOURCES)
libgvplugin_pango_la_LIBADD = @PANGOCAIRO_LIBS@ @FONTCONFIG_LIBS@ @MATH_LIBS@
gvplugin_xlib.c \
gvdevice_xlib.c
-libgvplugin_xlib_la_LDFLAGS = -version-info @VERSION_INFO@ -no-undefined
+libgvplugin_xlib_la_LDFLAGS = -version-info @GVPLUGIN_VERSION_INFO@ -no-undefined
libgvplugin_xlib_la_SOURCES = $(libgvplugin_xlib_C_la_SOURCES)
libgvplugin_xlib_la_LIBADD = @PANGOCAIRO_LIBS@ @X_LIBS@ -lX11 @SOCKET_LIBS@ @MATH_LIBS@