configure.ac revision c76ae52d
1c76ae52dSmrgdnl 2c76ae52dSmrgdnl $Id: configure.ac,v 1.1.1.1 2008/07/30 02:49:03 mrg Exp $ 3c76ae52dSmrgdnl 4c76ae52dSmrgdnl Copyright © 2003 Keith Packard, Noah Levitt 5c76ae52dSmrgdnl 6c76ae52dSmrgdnl Permission to use, copy, modify, distribute, and sell this software and its 7c76ae52dSmrgdnl documentation for any purpose is hereby granted without fee, provided that 8c76ae52dSmrgdnl the above copyright notice appear in all copies and that both that 9c76ae52dSmrgdnl copyright notice and this permission notice appear in supporting 10c76ae52dSmrgdnl documentation, and that the name of Keith Packard not be used in 11c76ae52dSmrgdnl advertising or publicity pertaining to distribution of the software without 12c76ae52dSmrgdnl specific, written prior permission. Keith Packard makes no 13c76ae52dSmrgdnl representations about the suitability of this software for any purpose. It 14c76ae52dSmrgdnl is provided "as is" without express or implied warranty. 15c76ae52dSmrgdnl 16c76ae52dSmrgdnl KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 17c76ae52dSmrgdnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 18c76ae52dSmrgdnl EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR 19c76ae52dSmrgdnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 20c76ae52dSmrgdnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 21c76ae52dSmrgdnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 22c76ae52dSmrgdnl PERFORMANCE OF THIS SOFTWARE. 23c76ae52dSmrgdnl 24c76ae52dSmrgdnl Process this file with autoconf to create configure. 25c76ae52dSmrg 26c76ae52dSmrgAC_PREREQ([2.57]) 27c76ae52dSmrg 28c76ae52dSmrgdnl 29c76ae52dSmrgdnl This is the package version number, not the shared library 30c76ae52dSmrgdnl version. This same version number must appear in Xft.h 31c76ae52dSmrgdnl Yes, it is a pain to synchronize version numbers. Unfortunately, it's 32c76ae52dSmrgdnl not possible to extract the version number here from Xft.h 33c76ae52dSmrgdnl Please bump the minor library number at each release as well. 34c76ae52dSmrgdnl 35c76ae52dSmrgAC_INIT(libXft, 2.1.12, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], libXft) 36c76ae52dSmrgAC_CONFIG_AUX_DIR(.) 37c76ae52dSmrg 38c76ae52dSmrgAM_INIT_AUTOMAKE([dist-bzip2]) 39c76ae52dSmrgAM_MAINTAINER_MODE 40c76ae52dSmrg 41c76ae52dSmrgAM_CONFIG_HEADER(config.h) 42c76ae52dSmrg 43c76ae52dSmrg# checks for progs 44c76ae52dSmrgAC_PROG_CC 45c76ae52dSmrgAC_PROG_LIBTOOL 46c76ae52dSmrg 47c76ae52dSmrg# 48c76ae52dSmrg# Check for Xrender 49c76ae52dSmrg# 50c76ae52dSmrgPKG_CHECK_MODULES(XRENDER, xrender >= 0.8.2, [xrender_found_with_pkgconfig=yes], 51c76ae52dSmrg [xrender_found_with_pkgconfig=no]) 52c76ae52dSmrgcase "$xrender_found_with_pkgconfig" in 53c76ae52dSmrgno) 54c76ae52dSmrg PKG_CHECK_MODULES(XRENDER, xrender >= 0, [old_xrender_found_with_pkgconfig=yes], 55c76ae52dSmrg [old_xrender_found_with_pkgconfig=no]) 56c76ae52dSmrg case "$old_xrender_found_with_pkgconfig" in 57c76ae52dSmrg yes) 58c76ae52dSmrg XRENDER_LIBS="$XRENDER_LIBS -lXext -lX11" 59c76ae52dSmrg ;; 60c76ae52dSmrg *) 61c76ae52dSmrg # checks for X 62c76ae52dSmrg AC_PATH_X 63c76ae52dSmrg 64c76ae52dSmrg XRENDER_CFLAGS="-I$x_includes" 65c76ae52dSmrg XRENDER_LIBS="-L$x_libraries -lXrender -lXext -lX11" 66c76ae52dSmrg 67c76ae52dSmrg saved_CPPFLAGS="$CPPFLAGS" 68c76ae52dSmrg CPPFLAGS="$CPPFLAGS $XRENDER_CFLAGS" 69c76ae52dSmrg AC_CHECK_HEADERS([X11/extensions/Xrender.h], [], [AC_MSG_ERROR([Xrender.h not found.])]) 70c76ae52dSmrg CPPFLAGS="$saved_CPPFLAGS" 71c76ae52dSmrg 72c76ae52dSmrg saved_LIBS="$LIBS" 73c76ae52dSmrg LIBS="$LIBS $XRENDER_LIBS" 74c76ae52dSmrg AC_CHECK_FUNCS([XRenderFindStandardFormat], [], [AC_MSG_ERROR([libXrender not found or too old.])]) 75c76ae52dSmrg LIBS="$saved_LIBS" 76c76ae52dSmrg ;; 77c76ae52dSmrg esac 78c76ae52dSmrg ;; 79c76ae52dSmrgesac 80c76ae52dSmrg 81c76ae52dSmrg# Check freetype configuration 82c76ae52dSmrgAC_ARG_WITH(freetype-config, [ --with-freetype-config=PROG Use FreeType configuration program PROG], freetype_config=$withval, freetype_config=auto) 83c76ae52dSmrg 84c76ae52dSmrgif test "$freetype_config" = "auto"; then 85c76ae52dSmrg PKG_CHECK_MODULES(FREETYPE, freetype2, 86c76ae52dSmrg freetype_config=no, freetype_config=yes) 87c76ae52dSmrgfi 88c76ae52dSmrg 89c76ae52dSmrgif test "$freetype_config" = "yes"; then 90c76ae52dSmrg AC_PATH_PROG(ft_config,freetype-config,no) 91c76ae52dSmrg if test "$ft_config" = "no"; then 92c76ae52dSmrg AC_MSG_ERROR([You must have freetype installed; see http://www.freetype.org/]) 93c76ae52dSmrg fi 94c76ae52dSmrgelse 95c76ae52dSmrg ft_config="$freetype_config" 96c76ae52dSmrgfi 97c76ae52dSmrg 98c76ae52dSmrgif test "$freetype_config" != "no"; then 99c76ae52dSmrg FREETYPE_CFLAGS="`$ft_config --cflags`" 100c76ae52dSmrg FREETYPE_LIBS="`$ft_config --libs`" 101c76ae52dSmrgfi 102c76ae52dSmrg 103c76ae52dSmrg# Check fontconfig configuration 104c76ae52dSmrgPKG_CHECK_MODULES(FONTCONFIG, fontconfig >= 2.2) 105c76ae52dSmrg 106c76ae52dSmrgAC_SUBST(XRENDER_CFLAGS) 107c76ae52dSmrgAC_SUBST(XRENDER_LIBS) 108c76ae52dSmrgAC_SUBST(FREETYPE_CFLAGS) 109c76ae52dSmrgAC_SUBST(FREETYPE_LIBS) 110c76ae52dSmrgAC_SUBST(FONTCONFIG_CFLAGS) 111c76ae52dSmrgAC_SUBST(FONTCONFIG_LIBS) 112c76ae52dSmrg 113c76ae52dSmrgfontconfig_save_libs="$LIBS" 114c76ae52dSmrgfontconfig_save_cflags="$CFLAGS" 115c76ae52dSmrgLIBS="$LIBS $FREETYPE_LIBS" 116c76ae52dSmrgCFLAGS="$CFLAGS $FREETYPE_CFLAGS" 117c76ae52dSmrgAC_CHECK_FUNCS(FT_Get_Next_Char FT_Get_BDF_Property FT_Get_PS_Font_Info FT_Has_PS_Glyph_Names FT_GlyphSlot_Embolden) 118c76ae52dSmrgAC_CHECK_MEMBER(FT_Bitmap_Size.y_ppem, 119c76ae52dSmrg HAVE_FT_BITMAP_SIZE_Y_PPEM=1, 120c76ae52dSmrg HAVE_FT_BITMAP_SIZE_Y_PPEM=0, 121c76ae52dSmrg[#include <ft2build.h> 122c76ae52dSmrg#include FT_FREETYPE_H]) 123c76ae52dSmrgAC_DEFINE_UNQUOTED(HAVE_FT_BITMAP_SIZE_Y_PPEM,$HAVE_FT_BITMAP_SIZE_Y_PPEM, 124c76ae52dSmrg [FT_Bitmap_Size structure includes y_ppem field]) 125c76ae52dSmrg 126c76ae52dSmrgLIBS="$fontconfig_save_libs" 127c76ae52dSmrgCFLAGS="$fontconfig_save_cflags" 128c76ae52dSmrg 129c76ae52dSmrgif test "$VERSION" = "" ; then 130c76ae52dSmrg VERSION=$PACKAGE_VERSION; 131c76ae52dSmrgfi 132c76ae52dSmrg 133c76ae52dSmrgWARN_CFLAGS="" 134c76ae52dSmrg 135c76ae52dSmrgif test "x$GCC" = "xyes"; then 136c76ae52dSmrg WARN_CFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes \ 137c76ae52dSmrg -Wmissing-prototypes -Wmissing-declarations \ 138c76ae52dSmrg -Wnested-externs -fno-strict-aliasing" 139c76ae52dSmrgfi 140c76ae52dSmrgAC_SUBST(WARN_CFLAGS) 141c76ae52dSmrg 142c76ae52dSmrgXORG_RELEASE_VERSION 143c76ae52dSmrg 144c76ae52dSmrgAC_OUTPUT([Makefile 145c76ae52dSmrg xft.pc 146c76ae52dSmrg xft-config 147c76ae52dSmrg src/Makefile 148c76ae52dSmrg man/Makefile 149c76ae52dSmrg man/xft-config.1 150c76ae52dSmrg man/Xft.3]) 151