Home modules.gotpike.org
Username: Password: [Create Account]
[Forgot Password?]

Modules

ADT
Database
GTK2
GUI
IP
PiJAX
Public
Sql
Stdio
Subversion
System
Tools
Xosd
lua
v4l2
wx

Recent Changes

Public.Parser.XML2 1.50
Public.ZeroMQ 1.1
Public.Template.Mustache 1.0
Public.Protocols.XMPP 1.4
Sql.Provider.jdbc 1.0

Popular Downloads

Public.Parser.JSON2 1.0
Public.Parser.JSON 0.2
GTK2 2.23
Public.Web.FCGI 1.8
Public.Parser.XML2 1.48


Module Information
GTK2
Viewing contents of GTK2-2.17/configure.in

dnl test

AC_INIT(build_pgtk.pike)
AC_CONFIG_HEADER(pgtk_config.h)

PIKE_FEATURE_WITHOUT(GTK2)
dnl PIKE_FEATURE_WITHOUT(Gnome)
dnl PIKE_FEATURE_WITHOUT(GTK.GladeXML)
dnl PIKE_FEATURE_WITHOUT(GTK.Databox)
dnl PIKE_FEATURE_WITHOUT(GTK.Sourceview)

AC_MODULE_INIT()

AC_CHECK_FUNCS( gethrtime signal sigaction )

dnl AC_DEFINE(FUNCPROTO)
dnl AC_DEFINE(HAVE_GNOME)
dnl AC_DEFINE(HAVE_DPMS)
dnl AC_DEFINE(PGTK_AUTO_UTF8)

AC_DEFINE(FUNCPROTO)

AC_HEADER_STDC

AC_CHECK_HEADERS( signal.h netinet/in.h arpa/inet.h sys/types.h sys/stat.h fcntl.h )

AC_PATH_PROG(PKG_CONFIG,${ac_tool_prefix}pkg-config,no)

AC_SUBST(have_x11)
AC_SUBST(pgtk_has_gtk_beta)
pgtk_has_gtk_beta=nogtk_beta
AC_SUBST(pgtk_has_gtk26)
pgtk_has_gtk26=nogtk26
AC_SUBST(pgtk_has_gtk24)
pgtk_has_gtk24=nogtk24
AC_SUBST(pgtk_has_gtk22)
pgtk_has_gtk22=nogtk22
AC_SUBST(pgtk_has_gnome)
pgtk_has_gnome=nognome
AC_SUBST(pgtk_has_pango_beta)
pgtk_has_pango_beta=nopango_beta
AC_SUBST(pgtk_has_pango)
pgtk_has_pango=nopango
AC_SUBST(pgtk_has_pango16)
pgtk_has_pango16=nopango16
AC_SUBST(pgtk_has_atk)
pgtk_has_atk=noatk
AC_SUBST(pgtk_has_atk18)
pgtk_has_atk18=noatk18
AC_SUBST(pgtk_has_gnomecanvas)
pgtk_has_gnomecanvas=nognomecanvas
AC_SUBST(pgtk_has_libglade)
pgtk_has_libglade=nolibglade
AC_SUBST(pgtk_has_gtkdatabox)
pgtk_has_gtkdatabox=nogtkdatabox
AC_SUBST(pgtk_has_gtksourceview)
pgtk_has_gtksourceview=nogtksourceview

AC_DEFUN([AC_CHECK_PKG],
[
  AC_MSG_CHECKING([for $1])
  if ${ac_tool_prefix}pkg-config $1 2>/dev/null; then
    AC_MSG_RESULT(yes)

    ifelse([$5],,,[PIKE_FEATURE_NODEP([$5])])dnl

    # Note: ORBit-2.0.pc on Solaris 10/x86 adds -mt to cflags,
    #       which gcc doesn't like...
    #       The manual for cc says that -mt is -D_REENTRANT plus -lthread;
    #       both of which should already be present.
    #  /grubba 2005-10-05
    OLD_CFLAGS="$CFLAGS"
    OLD_LIBS="$LIBS"
    LIBS="`${ac_tool_prefix}pkg-config --libs $gtk_final_libs $1 | sed -e 's/\(.*\)/ \1 /' | sed -e 's/ -mt / /g'` $LIBS"
    CFLAGS="`${ac_tool_prefix}pkg-config --cflags $gtk_final_libs $1 | sed -e 's/\(.*\)/ \1 /' | sed -e 's/ -mt / /g'` $CFLAGS"
    AC_CHECK_FUNCS($2)
    LIBS="$OLD_LIBS"
    CFLAGS="$OLD_CFLAGS"
    if test "x$ac_cv_func_$2" = "xyes"; then
      gtk_final_libs="$gtk_final_libs $1"
      ifelse([$3],,ifelse([$5],,,[PIKE_FEATURE_OK([$5])]),[$3])dnl
    else
      echo "Disabled use of $1."
      ifelse([$4],,,[$4])dnl
    fi
  else
    AC_MSG_RESULT(no)
    ifelse([$4],,,[$4])dnl
  fi
])

WITH_GTK=0
if test "$PKG_CONFIG" = "no" ; then
  echo "*** pkg-config must be in your path!!!"
  WITH_GTK=0
else
  gtk_test_libs="gtk+-2.0 libgnome-2.0 libglade-2.0 libgnomeui-2.0 libpanelapplet-2.0"
  gtk_final_libs=""
  AC_CHECK_PKG(gtk+-2.0, gtk_init, [
    PIKE_FEATURE_OK(GTK2)
    WITH_GTK=1
  ],,GTK2)
  if test "x$WITH_GTK" = "x1"; then
    AC_MSG_CHECKING([for gtk+ version])
    gtkvers=`${ac_tool_prefix}pkg-config --modversion gtk+-2.0 2>/dev/null`
    OIFS="$IFS"
    IFS="."
    set $gtkvers
    IFS="$OIFS"
    gtkmajorvers=$1
    gtkminorvers=$2
    gtkpatchvers=$3
    if test $gtkmajorvers -le 1 ; then
      # The old betas had major 1; eg 1.3.2
      pgtk_has_gtk_beta=gtk_beta
      AC_DEFINE(HAVE_GTK_BETA)
    else
      if test $gtkminorvers -ge 2 ; then
	pgtk_has_gtk22=gtk22
	AC_DEFINE(HAVE_GTK22)
      fi
      if test $gtkminorvers -ge 4 ; then
	pgtk_has_gtk24=gtk24
	AC_DEFINE(HAVE_GTK24)
      fi
      if test $gtkminorvers -ge 6 ; then
	pgtk_has_gtk26=gtk26
	AC_DEFINE(HAVE_GTK26)
      fi
      if test $gtkminorvers -ge 8 ; then
	pgtk_has_gtk28=gtk28
	AC_DEFINE(HAVE_GTK28)
      fi
    fi
    AC_MSG_RESULT($gtkvers)
    AC_CHECK_PKG(pango, pango_context_new, [
      pgtk_has_pango=pango
      AC_DEFINE(HAVE_PANGO)

      AC_MSG_CHECKING([for pango version])
      pangovers=`${ac_tool_prefix}pkg-config --modversion pango 2>/dev/null`
      OIFS="$IFS"
      IFS="."
      set $pangovers
      IFS="$OIFS"
      pangomajorvers=$1
      pangominorvers=$2
      pangopatchvers=$3
      if test $pangomajorvers -le 0 ; then
	# The old betas had major 0; eg 0.13
	pgtk_has_pango_beta=pango_beta
	AC_DEFINE(HAVE_PANGO_BETA)
      else
	if test $pangominorvers -ge 10 ; then
	  pgtk_has_pango110=pango110
	  AC_DEFINE(HAVE_PANGO110)
	fi
	if test $pangominorvers -ge 8 ; then
	  pgtk_has_pango18=pango18
	  AC_DEFINE(HAVE_PANGO18)
	fi
	if test $pangominorvers -ge 6 ; then
	  pgtk_has_pango16=pango16
	  AC_DEFINE(HAVE_PANGO16)
	fi
	if test $pangominorvers -ge 4 ; then
	  pgtk_has_pango14=pango14
	  AC_DEFINE(HAVE_PANGO14)
	fi
	if test $pangominorvers -ge 2 ; then
	  pgtk_has_pango12=pango12
	  AC_DEFINE(HAVE_PANGO12)
	fi
      fi
      AC_MSG_RESULT($pangovers)
    ])
    AC_CHECK_PKG(atk, atk_relation_new, [
      pgtk_has_atk=atk
      AC_DEFINE(HAVE_ATK)

      AC_MSG_CHECKING([for atk version])
      atkvers=`${ac_tool_prefix}pkg-config --modversion atk 2>/dev/null`
      OIFS="$IFS"
      IFS="."
      set $atkvers
      IFS="$OIFS"
      atkmajorvers=$1
      atkminorvers=$2
      atkpatchvers=$3
      if test $atkminorvers -ge 8 ; then
	pgtk_has_atk18=atk18
	AC_DEFINE(HAVE_ATK18)
      fi
      AC_MSG_RESULT($atkvers)
    ])
    AC_CHECK_PKG(libgnome-2.0, gnome_program_init, [
      AC_DEFINE(HAVE_GNOME)
      pgtk_has_gnome=gnome
    ])
    AC_CHECK_PKG(libgnomeui-2.0, gnome_window_icon_init)
    AC_CHECK_PKG(libpanelapplet-2.0, panel_applet_factory_main)
    AC_CHECK_PKG(libgnomecanvas-2.0, gnome_canvas_new, [
      AC_DEFINE(HAVE_GNOMECANVAS)
      pgtk_has_gnome_canvas=gnomecanvas
    ])
    AC_CHECK_PKG(libglade-2.0, glade_xml_get_widget, [
      AC_DEFINE(HAVE_GLADE)
      pgtk_has_glade=libglade
    ])
    AC_CHECK_PKG(gtkdatabox, gtk_databox_data_add, [
      AC_DEFINE(HAVE_GTKDATABOX)
      pgtk_has_gtkdatabox=gtkdatabox
    ])
    AC_CHECK_PKG(gtksourceview-1.0, gtk_source_view_new, [
      AC_DEFINE(HAVE_GTKSOURCEVIEW)
      pgtk_has_gtksourceview=gtksourceview
    ])
    # Note: ORBit-2.0.pc on Solaris 10/x86 adds -mt to cflags,
    #       which gcc doesn't like...
    #       The manual for cc says that -mt is -D_REENTRANT plus -lthread;
    #       both of which should already be present.
    #  /grubba 2005-10-05
    GTK_CFLAGS="`${ac_tool_prefix}pkg-config --cflags ${gtk_final_libs} | sed -e 's/\(.*\)/ \1 /' | sed -e 's/ -mt / /g'`"
    GTK_LIBS="`${ac_tool_prefix}pkg-config --libs ${gtk_final_libs} | sed -e 's/\(.*\)/ \1 /' | sed -e 's/ -mt / /g'`"

    AC_DEFINE(PGTK_AUTO_UTF8)
  fi
fi

# Test for API differences...
OLD_CFLAGS="$CFLAGS"
OLD_LIBS="$LIBS"
CFLAGS="$CFLAGS $GTK_CFLAGS"
LIBS="$LIBS $GTK_LIBS"

AC_MSG_CHECKING([if g_signal_connect_data takes six args])
AC_CACHE_VAL(pgtk_cv_g_signal_connect_has_six_args, [
  AC_TRY_COMPILE([
#include 
  ],[
    g_signal_connect_data(0,0,0,0,0,0);
  ], [ pgtk_cv_g_signal_connect_has_six_args="yes"
  ], [ pgtk_cv_g_signal_connect_has_six_args="no" ])
])
if test "x$pgtk_cv_g_signal_connect_has_six_args" = "xyes"; then
  AC_MSG_RESULT(yes)
  AC_DEFINE(HAVE_G_SIGNAL_CONNECT_DATA_WITH_SIX_ARGS)
else
  AC_MSG_RESULT(no -- old glib assumed)
fi

LIBS="$OLD_LIBS"
CFLAGS="$OLD_CFLAGS"

AC_SUBST(pgtk_has_libglade)
AC_SUBST(pgtk_has_gtk28)
AC_SUBST(pgtk_has_gtk26)
AC_SUBST(pgtk_has_gtk24)
AC_SUBST(pgtk_has_gtk22)
AC_SUBST(pgtk_has_pango)
AC_SUBST(pgtk_has_pango110)
AC_SUBST(pgtk_has_pango18)
AC_SUBST(pgtk_has_pango16)
AC_SUBST(pgtk_has_pango14)
AC_SUBST(pgtk_has_pango12)
AC_SUBST(pgtk_has_atk)
AC_SUBST(pgtk_has_atk18)
AC_SUBST(PGTK_CFLAGS)
AC_SUBST(PGTK_LIBS)
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
AC_SUBST(pgtk_has_gnome)
AC_SUBST(pgtk_has_gnomecanvas)
AC_SUBST(pgtk_has_gtkdatabox)
AC_SUBST(pgtk_has_gtksourceview)

AC_SUBST(WITH_GTK)
PGTK_CFLAGS="$GTK_CFLAGS"
PGTK_LIBS="$GTK_LIBS"
CFLAGS="$CFLAGS $GTK_CFLAGS"
LIBS="$MODULE_LDFLAGS $LIBS"
AC_OUTPUT(Makefile options)


gotpike.org | Copyright © 2004 - 2019 | Pike is a trademark of Department of Computer and Information Science, Linköping University