From: Jo-Philipp Wich Date: Fri, 10 Dec 2010 09:08:38 +0000 (+0000) Subject: [packages] libxkbfile: remove private libtool copy, supply missing macros X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=1ba2ec3f21bc0af79ffbfeaec5d7ea65c6668773;p=openwrt%2Fsvn-archive%2Farchive.git [packages] libxkbfile: remove private libtool copy, supply missing macros SVN-Revision: 24404 --- diff --git a/Xorg/xorg/lib/libxkbfile/Makefile b/Xorg/xorg/lib/libxkbfile/Makefile index 2ba43118e9..41c479e43f 100644 --- a/Xorg/xorg/lib/libxkbfile/Makefile +++ b/Xorg/xorg/lib/libxkbfile/Makefile @@ -17,6 +17,8 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/Xorg/$(PKG_NAME)-$(PKG_VERSION)/ PKG_MD5SUM:=b01156e263eca8177e6b7f10441951c4 PKG_FIXUP:=libtool +PKG_REMOVE_FILES:=aclocal.m4 ltmain.sh + PKG_INSTALL:=1 PKG_BUILD_DEPENDS:=kbproto diff --git a/Xorg/xorg/lib/libxkbfile/patches/001-missing-macros.patch b/Xorg/xorg/lib/libxkbfile/patches/001-missing-macros.patch new file mode 100644 index 0000000000..698efc0cb9 --- /dev/null +++ b/Xorg/xorg/lib/libxkbfile/patches/001-missing-macros.patch @@ -0,0 +1,742 @@ +--- /dev/null ++++ b/pkg.m4 +@@ -0,0 +1,156 @@ ++# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- ++# ++# Copyright © 2004 Scott James Remnant . ++# ++# This program is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 2 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++# ++# As a special exception to the GNU General Public License, if you ++# distribute this file as part of a program that contains a ++# configuration script generated by Autoconf, you may include it under ++# the same distribution terms that you use for the rest of that program. ++ ++# PKG_PROG_PKG_CONFIG([MIN-VERSION]) ++# ---------------------------------- ++AC_DEFUN([PKG_PROG_PKG_CONFIG], ++[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) ++m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) ++AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl ++if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then ++ AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) ++fi ++if test -n "$PKG_CONFIG"; then ++ _pkg_min_version=m4_default([$1], [0.9.0]) ++ AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) ++ if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_RESULT([no]) ++ PKG_CONFIG="" ++ fi ++ ++fi[]dnl ++])# PKG_PROG_PKG_CONFIG ++ ++# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) ++# ++# Check to see whether a particular set of modules exists. Similar ++# to PKG_CHECK_MODULES(), but does not set variables or print errors. ++# ++# ++# Similar to PKG_CHECK_MODULES, make sure that the first instance of ++# this or PKG_CHECK_MODULES is called, or make sure to call ++# PKG_CHECK_EXISTS manually ++# -------------------------------------------------------------- ++AC_DEFUN([PKG_CHECK_EXISTS], ++[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl ++if test -n "$PKG_CONFIG" && \ ++ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then ++ m4_ifval([$2], [$2], [:]) ++m4_ifvaln([$3], [else ++ $3])dnl ++fi]) ++ ++ ++# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) ++# --------------------------------------------- ++m4_define([_PKG_CONFIG], ++[if test -n "$$1"; then ++ pkg_cv_[]$1="$$1" ++ elif test -n "$PKG_CONFIG"; then ++ PKG_CHECK_EXISTS([$3], ++ [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], ++ [pkg_failed=yes]) ++ else ++ pkg_failed=untried ++fi[]dnl ++])# _PKG_CONFIG ++ ++# _PKG_SHORT_ERRORS_SUPPORTED ++# ----------------------------- ++AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], ++[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) ++if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then ++ _pkg_short_errors_supported=yes ++else ++ _pkg_short_errors_supported=no ++fi[]dnl ++])# _PKG_SHORT_ERRORS_SUPPORTED ++ ++ ++# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], ++# [ACTION-IF-NOT-FOUND]) ++# ++# ++# Note that if there is a possibility the first call to ++# PKG_CHECK_MODULES might not happen, you should be sure to include an ++# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac ++# ++# ++# -------------------------------------------------------------- ++AC_DEFUN([PKG_CHECK_MODULES], ++[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl ++AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl ++AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl ++ ++pkg_failed=no ++AC_MSG_CHECKING([for $1]) ++ ++_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) ++_PKG_CONFIG([$1][_LIBS], [libs], [$2]) ++ ++m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS ++and $1[]_LIBS to avoid the need to call pkg-config. ++See the pkg-config man page for more details.]) ++ ++if test $pkg_failed = yes; then ++ _PKG_SHORT_ERRORS_SUPPORTED ++ if test $_pkg_short_errors_supported = yes; then ++ $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1` ++ else ++ $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1` ++ fi ++ # Put the nasty error message in config.log where it belongs ++ echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD ++ ++ ifelse([$4], , [AC_MSG_ERROR(dnl ++[Package requirements ($2) were not met: ++ ++$$1_PKG_ERRORS ++ ++Consider adjusting the PKG_CONFIG_PATH environment variable if you ++installed software in a non-standard prefix. ++ ++_PKG_TEXT ++])], ++ [AC_MSG_RESULT([no]) ++ $4]) ++elif test $pkg_failed = untried; then ++ ifelse([$4], , [AC_MSG_FAILURE(dnl ++[The pkg-config script could not be found or is too old. Make sure it ++is in your PATH or set the PKG_CONFIG environment variable to the full ++path to pkg-config. ++ ++_PKG_TEXT ++ ++To get pkg-config, see .])], ++ [$4]) ++else ++ $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS ++ $1[]_LIBS=$pkg_cv_[]$1[]_LIBS ++ AC_MSG_RESULT([yes]) ++ ifelse([$3], , :, [$3]) ++fi[]dnl ++])# PKG_CHECK_MODULES ++ +--- /dev/null ++++ b/xorg-macros.m4 +@@ -0,0 +1,580 @@ ++dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure. ++dnl ++dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved. ++dnl ++dnl Permission is hereby granted, free of charge, to any person obtaining a ++dnl copy of this software and associated documentation files (the ++dnl "Software"), to deal in the Software without restriction, including ++dnl without limitation the rights to use, copy, modify, merge, publish, ++dnl distribute, and/or sell copies of the Software, and to permit persons ++dnl to whom the Software is furnished to do so, provided that the above ++dnl copyright notice(s) and this permission notice appear in all copies of ++dnl the Software and that both the above copyright notice(s) and this ++dnl permission notice appear in supporting documentation. ++dnl ++dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ++dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT ++dnl OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ++dnl HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL ++dnl INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING ++dnl FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, ++dnl NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION ++dnl WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++dnl ++dnl Except as contained in this notice, the name of a copyright holder ++dnl shall not be used in advertising or otherwise to promote the sale, use ++dnl or other dealings in this Software without prior written authorization ++dnl of the copyright holder. ++ ++# XORG_MACROS_VERSION(required-version) ++# ------------------------------------- ++# Minimum version: 1.1.0 ++# ++# If you're using a macro added in Version 1.1 or newer, include this in ++# your configure.ac with the minimum required version, such as: ++# XORG_MACROS_VERSION(1.1) ++# ++# To ensure that this macro is defined, also add: ++# m4_ifndef([XORG_MACROS_VERSION], ++# [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])]) ++# ++# ++# See the "minimum version" comment for each macro you use to see what ++# version you require. ++m4_defun([XORG_MACROS_VERSION],[ ++m4_define([vers_have], [1.3.0]) ++m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.]))) ++m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.]))) ++m4_if(m4_cmp(maj_have, maj_needed), 0,, ++ [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])]) ++m4_if(m4_version_compare(vers_have, [$1]), -1, ++ [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])]) ++m4_undefine([vers_have]) ++m4_undefine([maj_have]) ++m4_undefine([maj_needed]) ++]) # XORG_MACROS_VERSION ++ ++# XORG_PROG_RAWCPP() ++# ------------------ ++# Minimum version: 1.0.0 ++# ++# Find cpp program and necessary flags for use in pre-processing text files ++# such as man pages and config files ++AC_DEFUN([XORG_PROG_RAWCPP],[ ++AC_REQUIRE([AC_PROG_CPP]) ++AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}], ++ [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib]) ++ ++# Check for flag to avoid builtin definitions - assumes unix is predefined, ++# which is not the best choice for supporting other OS'es, but covers most ++# of the ones we need for now. ++AC_MSG_CHECKING([if $RAWCPP requires -undef]) ++AC_LANG_CONFTEST([Does cpp redefine unix ?]) ++if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then ++ AC_MSG_RESULT([no]) ++else ++ if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then ++ RAWCPPFLAGS=-undef ++ AC_MSG_RESULT([yes]) ++ # under Cygwin unix is still defined even with -undef ++ elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then ++ RAWCPPFLAGS="-undef -ansi" ++ AC_MSG_RESULT([yes, with -ansi]) ++ else ++ AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef. I don't know what to do.]) ++ fi ++fi ++rm -f conftest.$ac_ext ++ ++AC_MSG_CHECKING([if $RAWCPP requires -traditional]) ++AC_LANG_CONFTEST([Does cpp preserve "whitespace"?]) ++if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then ++ AC_MSG_RESULT([no]) ++else ++ if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then ++ RAWCPPFLAGS="${RAWCPPFLAGS} -traditional" ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional. I don't know what to do.]) ++ fi ++fi ++rm -f conftest.$ac_ext ++AC_SUBST(RAWCPPFLAGS) ++]) # XORG_PROG_RAWCPP ++ ++# XORG_MANPAGE_SECTIONS() ++# ----------------------- ++# Minimum version: 1.0.0 ++# ++# Determine which sections man pages go in for the different man page types ++# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files. ++# Not sure if there's any better way than just hardcoding by OS name. ++# Override default settings by setting environment variables ++ ++AC_DEFUN([XORG_MANPAGE_SECTIONS],[ ++AC_REQUIRE([AC_CANONICAL_HOST]) ++ ++if test x$APP_MAN_SUFFIX = x ; then ++ APP_MAN_SUFFIX=1 ++fi ++if test x$APP_MAN_DIR = x ; then ++ APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' ++fi ++ ++if test x$LIB_MAN_SUFFIX = x ; then ++ LIB_MAN_SUFFIX=3 ++fi ++if test x$LIB_MAN_DIR = x ; then ++ LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' ++fi ++ ++if test x$FILE_MAN_SUFFIX = x ; then ++ case $host_os in ++ solaris*) FILE_MAN_SUFFIX=4 ;; ++ *) FILE_MAN_SUFFIX=5 ;; ++ esac ++fi ++if test x$FILE_MAN_DIR = x ; then ++ FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' ++fi ++ ++if test x$MISC_MAN_SUFFIX = x ; then ++ case $host_os in ++ solaris*) MISC_MAN_SUFFIX=5 ;; ++ *) MISC_MAN_SUFFIX=7 ;; ++ esac ++fi ++if test x$MISC_MAN_DIR = x ; then ++ MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' ++fi ++ ++if test x$DRIVER_MAN_SUFFIX = x ; then ++ case $host_os in ++ solaris*) DRIVER_MAN_SUFFIX=7 ;; ++ *) DRIVER_MAN_SUFFIX=4 ;; ++ esac ++fi ++if test x$DRIVER_MAN_DIR = x ; then ++ DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' ++fi ++ ++if test x$ADMIN_MAN_SUFFIX = x ; then ++ case $host_os in ++ solaris*) ADMIN_MAN_SUFFIX=1m ;; ++ *) ADMIN_MAN_SUFFIX=8 ;; ++ esac ++fi ++if test x$ADMIN_MAN_DIR = x ; then ++ ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' ++fi ++ ++ ++AC_SUBST([APP_MAN_SUFFIX]) ++AC_SUBST([LIB_MAN_SUFFIX]) ++AC_SUBST([FILE_MAN_SUFFIX]) ++AC_SUBST([MISC_MAN_SUFFIX]) ++AC_SUBST([DRIVER_MAN_SUFFIX]) ++AC_SUBST([ADMIN_MAN_SUFFIX]) ++AC_SUBST([APP_MAN_DIR]) ++AC_SUBST([LIB_MAN_DIR]) ++AC_SUBST([FILE_MAN_DIR]) ++AC_SUBST([MISC_MAN_DIR]) ++AC_SUBST([DRIVER_MAN_DIR]) ++AC_SUBST([ADMIN_MAN_DIR]) ++]) # XORG_MANPAGE_SECTIONS ++ ++# XORG_CHECK_LINUXDOC ++# ------------------- ++# Minimum version: 1.0.0 ++# ++# Defines the variable MAKE_TEXT if the necessary tools and ++# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt. ++# Whether or not the necessary tools and files are found can be checked ++# with the AM_CONDITIONAL "BUILD_LINUXDOC" ++AC_DEFUN([XORG_CHECK_LINUXDOC],[ ++if test x$XORG_SGML_PATH = x ; then ++ XORG_SGML_PATH=$prefix/share/sgml ++fi ++HAVE_DEFS_ENT= ++ ++if test x"$cross_compiling" = x"yes" ; then ++ HAVE_DEFS_ENT=no ++else ++ AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) ++fi ++ ++AC_PATH_PROG(LINUXDOC, linuxdoc) ++AC_PATH_PROG(PS2PDF, ps2pdf) ++ ++AC_MSG_CHECKING([Whether to build documentation]) ++ ++if test x$HAVE_DEFS_ENT != x && test x$LINUXDOC != x ; then ++ BUILDDOC=yes ++else ++ BUILDDOC=no ++fi ++ ++AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes]) ++ ++AC_MSG_RESULT([$BUILDDOC]) ++ ++AC_MSG_CHECKING([Whether to build pdf documentation]) ++ ++if test x$PS2PDF != x && test x$BUILD_PDFDOC != xno; then ++ BUILDPDFDOC=yes ++else ++ BUILDPDFDOC=no ++fi ++ ++AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) ++ ++AC_MSG_RESULT([$BUILDPDFDOC]) ++ ++MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt" ++MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps" ++MAKE_PDF="$PS2PDF" ++MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B html --split=0" ++ ++AC_SUBST(MAKE_TEXT) ++AC_SUBST(MAKE_PS) ++AC_SUBST(MAKE_PDF) ++AC_SUBST(MAKE_HTML) ++]) # XORG_CHECK_LINUXDOC ++ ++# XORG_CHECK_DOCBOOK ++# ------------------- ++# Minimum version: 1.0.0 ++# ++# Checks for the ability to build output formats from SGML DocBook source. ++# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC" ++# indicates whether the necessary tools and files are found and, if set, ++# $(MAKE_XXX) blah.sgml will produce blah.xxx. ++AC_DEFUN([XORG_CHECK_DOCBOOK],[ ++if test x$XORG_SGML_PATH = x ; then ++ XORG_SGML_PATH=$prefix/share/sgml ++fi ++HAVE_DEFS_ENT= ++BUILDTXTDOC=no ++BUILDPDFDOC=no ++BUILDPSDOC=no ++BUILDHTMLDOC=no ++ ++AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) ++ ++AC_PATH_PROG(DOCBOOKPS, docbook2ps) ++AC_PATH_PROG(DOCBOOKPDF, docbook2pdf) ++AC_PATH_PROG(DOCBOOKHTML, docbook2html) ++AC_PATH_PROG(DOCBOOKTXT, docbook2txt) ++ ++AC_MSG_CHECKING([Whether to build text documentation]) ++if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKTXT != x && ++ test x$BUILD_TXTDOC != xno; then ++ BUILDTXTDOC=yes ++fi ++AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes]) ++AC_MSG_RESULT([$BUILDTXTDOC]) ++ ++AC_MSG_CHECKING([Whether to build PDF documentation]) ++if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPDF != x && ++ test x$BUILD_PDFDOC != xno; then ++ BUILDPDFDOC=yes ++fi ++AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) ++AC_MSG_RESULT([$BUILDPDFDOC]) ++ ++AC_MSG_CHECKING([Whether to build PostScript documentation]) ++if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPS != x && ++ test x$BUILD_PSDOC != xno; then ++ BUILDPSDOC=yes ++fi ++AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes]) ++AC_MSG_RESULT([$BUILDPSDOC]) ++ ++AC_MSG_CHECKING([Whether to build HTML documentation]) ++if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKHTML != x && ++ test x$BUILD_HTMLDOC != xno; then ++ BUILDHTMLDOC=yes ++fi ++AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes]) ++AC_MSG_RESULT([$BUILDHTMLDOC]) ++ ++MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT" ++MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS" ++MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF" ++MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML" ++ ++AC_SUBST(MAKE_TEXT) ++AC_SUBST(MAKE_PS) ++AC_SUBST(MAKE_PDF) ++AC_SUBST(MAKE_HTML) ++]) # XORG_CHECK_DOCBOOK ++ ++# XORG_CHECK_MALLOC_ZERO ++# ---------------------- ++# Minimum version: 1.0.0 ++# ++# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if ++# malloc(0) returns NULL. Packages should add one of these cflags to ++# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them. ++AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[ ++AC_ARG_ENABLE(malloc0returnsnull, ++ AS_HELP_STRING([--enable-malloc0returnsnull], ++ [malloc(0) returns NULL (default: auto)]), ++ [MALLOC_ZERO_RETURNS_NULL=$enableval], ++ [MALLOC_ZERO_RETURNS_NULL=auto]) ++ ++AC_MSG_CHECKING([whether malloc(0) returns NULL]) ++if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then ++ AC_RUN_IFELSE([ ++char *malloc(); ++char *realloc(); ++char *calloc(); ++main() { ++ char *m0, *r0, *c0, *p; ++ m0 = malloc(0); ++ p = malloc(10); ++ r0 = realloc(p,0); ++ c0 = calloc(0); ++ exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1); ++}], ++ [MALLOC_ZERO_RETURNS_NULL=yes], ++ [MALLOC_ZERO_RETURNS_NULL=no]) ++fi ++AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL]) ++ ++if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then ++ MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL" ++ XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS ++ XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC" ++else ++ MALLOC_ZERO_CFLAGS="" ++ XMALLOC_ZERO_CFLAGS="" ++ XTMALLOC_ZERO_CFLAGS="" ++fi ++ ++AC_SUBST([MALLOC_ZERO_CFLAGS]) ++AC_SUBST([XMALLOC_ZERO_CFLAGS]) ++AC_SUBST([XTMALLOC_ZERO_CFLAGS]) ++]) # XORG_CHECK_MALLOC_ZERO ++ ++# XORG_WITH_LINT() ++# ---------------- ++# Minimum version: 1.1.0 ++# ++# Sets up flags for source checkers such as lint and sparse if --with-lint ++# is specified. (Use --with-lint=sparse for sparse.) ++# Sets $LINT to name of source checker passed with --with-lint (default: lint) ++# Sets $LINT_FLAGS to flags to pass to source checker ++# Sets LINT automake conditional if enabled (default: disabled) ++# ++AC_DEFUN([XORG_WITH_LINT],[ ++ ++# Allow checking code with lint, sparse, etc. ++AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint], ++ [Use a lint-style source code checker (default: disabled)])], ++ [use_lint=$withval], [use_lint=no]) ++if test "x$use_lint" = "xyes" ; then ++ LINT="lint" ++else ++ LINT="$use_lint" ++fi ++if test "x$LINT_FLAGS" = "x" -a "x$LINT" != "xno" ; then ++ case $LINT in ++ lint|*/lint) ++ case $host_os in ++ solaris*) ++ LINT_FLAGS="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2" ++ ;; ++ esac ++ ;; ++ esac ++fi ++ ++AC_SUBST(LINT) ++AC_SUBST(LINT_FLAGS) ++AM_CONDITIONAL(LINT, [test x$LINT != xno]) ++ ++]) # XORG_WITH_LINT ++ ++# XORG_LINT_LIBRARY(LIBNAME) ++# -------------------------- ++# Minimum version: 1.1.0 ++# ++# Sets up flags for building lint libraries for checking programs that call ++# functions in the library. ++# Disabled by default, enable with --enable-lint-library ++# Sets: ++# @LINTLIB@ - name of lint library file to make ++# MAKE_LINT_LIB - automake conditional ++# ++ ++AC_DEFUN([XORG_LINT_LIBRARY],[ ++AC_REQUIRE([XORG_WITH_LINT]) ++# Build lint "library" for more indepth checks of programs calling this library ++AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library], ++ [Create lint library (default: disabled)])], ++ [make_lint_lib=$enableval], [make_lint_lib=no]) ++if test "x$make_lint_lib" != "xno" ; then ++ if test "x$LINT" = "xno" ; then ++ AC_MSG_ERROR([Cannot make lint library without --with-lint]) ++ fi ++ if test "x$make_lint_lib" = "xyes" ; then ++ LINTLIB=llib-l$1.ln ++ else ++ LINTLIB=$make_lint_lib ++ fi ++fi ++AC_SUBST(LINTLIB) ++AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno]) ++ ++]) # XORG_LINT_LIBRARY ++ ++# XORG_CWARNFLAGS ++# --------------- ++# Minimum version: 1.2.0 ++# ++# Defines CWARNFLAGS to enable C compiler warnings. ++# ++AC_DEFUN([XORG_CWARNFLAGS], [ ++AC_REQUIRE([AC_PROG_CC]) ++if test "x$GCC" = xyes ; then ++ CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \ ++-Wmissing-declarations -Wnested-externs -fno-strict-aliasing \ ++-Wbad-function-cast" ++ case `$CC -dumpversion` in ++ 3.4.* | 4.*) ++ CWARNFLAGS="$CWARNFLAGS -Wold-style-definition -Wdeclaration-after-statement" ++ ;; ++ esac ++else ++ AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) ++ if test "x$SUNCC" = "xyes"; then ++ CWARNFLAGS="-v" ++ fi ++fi ++AC_SUBST(CWARNFLAGS) ++m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) ++]) # XORG_CWARNFLAGS ++ ++# XORG_STRICT_OPTION ++# ----------------------- ++# Minimum version: 1.3.0 ++# ++# Add configure option to enable strict compilation ++AC_DEFUN([XORG_STRICT_OPTION], [ ++AC_REQUIRE([AC_PROG_CC]) ++AC_REQUIRE([AC_PROG_CC_C99]) ++AC_REQUIRE([XORG_CWARNFLAGS]) ++ ++AC_ARG_ENABLE(strict-compilation, ++ AS_HELP_STRING([--enable-strict-compilation], ++ [Enable all warnings from compiler and make them errors (default: disabled)]), ++ [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no]) ++if test "x$STRICT_COMPILE" = "xyes"; then ++ AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) ++ AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"]) ++ if test "x$GCC" = xyes ; then ++ STRICT_CFLAGS="-pedantic -Werror" ++ elif test "x$SUNCC" = "xyes"; then ++ STRICT_CFLAGS="-errwarn" ++ elif test "x$INTELCC" = "xyes"; then ++ STRICT_CFLAGS="-Werror" ++ fi ++fi ++CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS" ++AC_SUBST([CWARNFLAGS]) ++]) # XORG_STRICT_OPTION ++ ++# XORG_DEFAULT_OPTIONS ++# -------------------- ++# Minimum version: 1.3.0 ++# ++# Defines default options for X.Org modules. ++# ++AC_DEFUN([XORG_DEFAULT_OPTIONS], [ ++XORG_CWARNFLAGS ++XORG_STRICT_OPTION ++XORG_RELEASE_VERSION ++XORG_CHANGELOG ++XORG_MANPAGE_SECTIONS ++]) # XORG_DEFAULT_OPTIONS ++dnl Copyright 2005 Red Hat, Inc ++dnl ++dnl Permission to use, copy, modify, distribute, and sell this software and its ++dnl documentation for any purpose is hereby granted without fee, provided that ++dnl the above copyright notice appear in all copies and that both that ++dnl copyright notice and this permission notice appear in supporting ++dnl documentation. ++dnl ++dnl The above copyright notice and this permission notice shall be included ++dnl in all copies or substantial portions of the Software. ++dnl ++dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ++dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. ++dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR ++dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++dnl OTHER DEALINGS IN THE SOFTWARE. ++dnl ++dnl Except as contained in this notice, the name of the copyright holders shall ++dnl not be used in advertising or otherwise to promote the sale, use or ++dnl other dealings in this Software without prior written authorization ++dnl from the copyright holders. ++dnl ++ ++# XORG_RELEASE_VERSION ++# -------------------- ++# Adds --with/without-release-string and changes the PACKAGE and ++# PACKAGE_TARNAME to use "$PACKAGE{_TARNAME}-$RELEASE_VERSION". If ++# no option is given, PACKAGE and PACKAGE_TARNAME are unchanged. Also ++# defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use. ++ ++AC_DEFUN([XORG_RELEASE_VERSION],[ ++ AC_ARG_WITH(release-version, ++ AS_HELP_STRING([--with-release-version=STRING], ++ [Use release version string in package name]), ++ [RELEASE_VERSION="$withval"], ++ [RELEASE_VERSION=""]) ++ if test "x$RELEASE_VERSION" != "x"; then ++ PACKAGE="$PACKAGE-$RELEASE_VERSION" ++ PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" ++ AC_MSG_NOTICE([Building with package name set to $PACKAGE]) ++ fi ++ AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR], ++ [`echo $PACKAGE_VERSION | cut -d . -f 1`], ++ [Major version of this package]) ++ PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` ++ if test "x$PVM" = "x"; then ++ PVM="0" ++ fi ++ AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR], ++ [$PVM], ++ [Minor version of this package]) ++ PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` ++ if test "x$PVP" = "x"; then ++ PVP="0" ++ fi ++ AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL], ++ [$PVP], ++ [Patch version of this package]) ++]) ++ ++# XORG_CHANGELOG() ++# ---------------- ++# Minimum version: 1.2.0 ++# ++# Defines the variable CHANGELOG_CMD as the command to generate ++# ChangeLog from git. ++# ++# Arrange that distcleancheck ignores ChangeLog left over by distclean. ++# ++AC_DEFUN([XORG_CHANGELOG], [ ++CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ ++mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ ++echo 'git directory not found: installing possibly empty changelog.' >&2)" ++AC_SUBST([CHANGELOG_CMD]) ++AC_SUBST([distcleancheck_listfiles], ['find . -type f ! -name ChangeLog -print']) ++]) # XORG_CHANGELOG ++