Import Debian version 7.7+ok1

xutils-dev (1:7.7+ok1) yangtze; urgency=medium

  * Build for openKylin.
This commit is contained in:
denghao 2023-01-10 16:26:15 +08:00
commit 4229c47767
269 changed files with 181991 additions and 0 deletions

49
debian/README.source vendored Normal file
View File

@ -0,0 +1,49 @@
------------------------------------------------------
Quick Guide To Patching This Package For The Impatient
------------------------------------------------------
1. Make sure you have quilt installed
2. Unpack the package as usual with "dpkg-source -x"
3. Run the "patch" target in debian/rules
4. Create a new patch with "quilt new" (see quilt(1))
5. Edit all the files you want to include in the patch with "quilt edit"
(see quilt(1)).
6. Write the patch with "quilt refresh" (see quilt(1))
7. Run the "clean" target in debian/rules
Alternatively, instead of using quilt directly, you can drop the patch in to
debian/patches and add the name of the patch to debian/patches/series.
------------------------------------
Guide To The X Strike Force Packages
------------------------------------
The X Strike Force team maintains X packages in git repositories on
git.debian.org in the pkg-xorg subdirectory. Most upstream packages
are actually maintained in git repositories as well, so they often
just need to be pulled into git.debian.org in a "upstream-*" branch.
Otherwise, the upstream sources are manually installed in the Debian
git repository.
The .orig.tar.gz upstream source file could be generated using this
"upstream-*" branch in the Debian git repository but it is actually
copied from upstream tarballs directly.
Due to X.org being highly modular, packaging all X.org applications
as their own independent packages would have created too many Debian
packages. For this reason, some X.org applications have been grouped
into larger packages: xutils, xutils-dev, x11-apps, x11-session-utils,
x11-utils, x11-xfs-utils, x11-xkb-utils, x11-xserver-utils.
Most packages, including the X.org server itself and all libraries
and drivers are, however maintained independently.
The Debian packaging is added by creating the "debian-*" git branch
which contains the aforementioned "upstream-*" branch plus the debian/
repository files.
When a patch has to be applied to the Debian package, two solutions
are involved:
* If the patch is available in one of the upstream branches, it
may be git'cherry-picked into the Debian repository. In this
case, it appears directly in the .diff.gz.
* Otherwise, the patch is added to debian/patches/ which is managed
with quilt as documented in /usr/share/doc/quilt/README.source.

5
debian/changelog vendored Normal file
View File

@ -0,0 +1,5 @@
xutils-dev (1:7.7+ok1) yangtze; urgency=medium
* Build for openKylin.
-- denghao <denghao@kylinos.cn> Tue, 10 Jan 2023 16:26:15 +0800

1
debian/compat vendored Normal file
View File

@ -0,0 +1 @@
9

37
debian/control vendored Normal file
View File

@ -0,0 +1,37 @@
Source: xutils-dev
Section: x11
Priority: optional
Maintainer: Openkylin Developers <packaging@lists.openkylin.top>
Build-Depends:
dpkg-dev (>= 1.16.1),
debhelper (>= 9),
autotools-dev,
pkg-config,
quilt,
x11proto-dev,
autoconf,
Standards-Version: 3.9.6
Vcs-Git: https://gitee.com/openkylin/xutils-dev.git
Vcs-Browser: https://gitee.com/openkylin/xutils-dev.git
Package: xutils-dev
Architecture: any
Multi-Arch: foreign
Depends:
${shlibs:Depends},
${misc:Depends},
cpp,
Description: X Window System utility programs for development
xutils-dev provides a set of utility programs shipped with the X Window System
that do not require the X libraries; many of these programs are useful
even on a system that does not have any X clients or X servers installed.
.
The programs in this package include:
- imake, a C preprocessor interface to the make utility;
- lndir, a tool that creates a shadow directory of symbolic links to
another directory tree;
- makedepend, a tool to create dependencies in makefiles;
- makeg, a tool for making debuggable executables.
.
This package also contains xorg-macros.m4, a set of macros used in configure
scripts of X.Org packages.

240
debian/copyright vendored Normal file
View File

@ -0,0 +1,240 @@
gccmakedep:
XFree86 code without an explicit copyright is covered by the following copy-
right/license:
Copyright (C) 1994-2003 The XFree86 Project, Inc. All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is fur-
nished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FIT-
NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON-
NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of the XFree86 Project shall not
be used in advertising or otherwise to promote the sale, use or other deal-
ings in this Software without prior written authorization from the XFree86
Project.
imake:
Copyright (c) 1985, 1986, 1987, 1989, 1993, 1994, 1996, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall
not be used in advertising or otherwise to promote the sale, use or
other dealings in this Software without prior written authorization
from The Open Group.
Copyright © 1999, 2000, 2003 by The XFree86 Project, Inc. All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Except as contained in this notice, the name of the XFree86 Project shall
not be used in advertising or otherwise to promote the sale, use or other
dealings in this Software without prior written authorization from the
XFree86 Project.
lndir:
Copyright (c) 1990, 1993, 1994, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
makedepend:
Copyright (c) 1993, 1994, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
util-macros:
Copyright 2005 Red Hat, Inc.
Permission to use, copy, modify, distribute, and sell this software
and its documentation for any purpose is hereby granted without
fee, provided that the above copyright notice appear in all copies
and that both that copyright notice and this permission notice
appear in supporting documentation, and that the name of Red Hat
not be used in advertising or publicity pertaining to distribution
of the software without specific, written prior permission. Red
Hat makes no representations about the suitability of this software
for any purpose. It is provided "as is" without express or implied
warranty.
RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
NO EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
----------------------------------------------------------------------------
Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice (including the next
paragraph) shall be included in all copies or substantial portions of the
Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
xorg-cf-files:
Most of these files came from X11R6.6 or XFree86 4.4rc2.
X11R6.6 files are covered by this notice:
Copyright (c) 1999,2000,2001 Compaq Computer Corporation
Copyright (c) 1999,2000,2001 Hewlett-Packard Company
Copyright (c) 1999,2000,2001 IBM Corporation
Copyright (c) 1999,2000,2001 Hummingbird Communications Ltd.
Copyright (c) 1999,2000,2001 Silicon Graphics, Inc.
Copyright (c) 1999,2000,2001 Sun Microsystems, Inc.
Copyright (c) 1999,2000,2001 The Open Group
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
he rights to use, copy, modify, merge, publish, distribute, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, provided that the above copyright notice(s) and this
permission notice appear in all copies of the Software and that both the
above copyright notice(s) and this permission notice appear in supporting
documentation.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
Except as contained in this notice, the name of a copyright holder
shall not be used in advertising or otherwise to promote the sale, use
or other dealings in this Software without prior written authorization
of the copyright holder.
X Window System is a trademark of The Open Group.
----------------------------------------------------------------
XFree86 code without an explicit copyright is covered by the following
copyright/license:
Copyright (C) 1994-2003 The XFree86 Project, Inc. All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Except as contained in this notice, the name of the XFree86 Project shall
not be used in advertising or otherwise to promote the sale, use or other
dealings in this Software without prior written authorization from the
XFree86 Project.

24
debian/patches/03_xutils-dev-FHS.diff vendored Normal file
View File

@ -0,0 +1,24 @@
Index: xutils-dev-1.0.2/xorg-cf-files/linux.cf
===================================================================
--- xutils-dev-1.0.2.orig/xorg-cf-files/linux.cf 2006-04-16 16:53:09.000000000 +0800
+++ xutils-dev-1.0.2/xorg-cf-files/linux.cf 2006-04-16 16:54:41.000000000 +0800
@@ -86,6 +86,19 @@
# define BuildPDFdocs NO
#endif
+#ifndef ProjectRoot
+# define ProjectRoot /usr
+#endif
+#ifndef ManDirectoryRoot
+# define ManDirectoryRoot /usr/share/man
+#endif
+#ifndef AlternateUsrLibDir
+# define AlternateUsrLibDir NO
+#endif
+#ifndef AlternateIncRoot
+# define AlternateIncRoot NO
+#endif
+
#ifndef LinuxBinUtilsMajorVersion
# define LinuxBinUtilsMajorVersion DefaultLinuxBinUtilsMajorVersion
#endif

2654
debian/patches/04_xutils-dev-debian.diff vendored Normal file

File diff suppressed because it is too large Load Diff

69
debian/patches/05_xaw_without_xp.diff vendored Normal file
View File

@ -0,0 +1,69 @@
---
xorg-cf-files/FreeBSD.cf | 10 ++++++++++
xorg-cf-files/gnu.cf | 10 ++++++++++
xorg-cf-files/linux.cf | 10 ++++++++++
3 files changed, 30 insertions(+)
Index: xutils-dev/xorg-cf-files/linux.cf
===================================================================
--- xutils-dev.orig/xorg-cf-files/linux.cf
+++ xutils-dev/xorg-cf-files/linux.cf
@@ -1158,6 +1158,16 @@ InstallNamedTargetNoClobber(install,file
#define TtClientLibs $(TTLIB) $(XTOOLLIB) $(XLIB)
#define TtClientDepLibs $(DEPTTLIB) $(DEPXTOOLLIB) $(DEPXLIB)
+#ifndef ExtraXawClientLibs
+# define ExtraXawClientLibs /**/
+#endif
+#ifndef ExtraXawClientDepLibs
+# define ExtraXawClientDepLibs /**/
+#endif
+#ifndef ExtraXawReqs
+# define ExtraXawReqs /**/
+#endif
+
#if HaveLib64
# ifndef LibDirName
# define LibDirName lib64
Index: xutils-dev/xorg-cf-files/gnu.cf
===================================================================
--- xutils-dev.orig/xorg-cf-files/gnu.cf
+++ xutils-dev/xorg-cf-files/gnu.cf
@@ -541,6 +541,16 @@ InstallNamedTargetNoClobber(install,file
#define TtClientLibs $(TTLIB) $(XTOOLLIB) $(XLIB)
#define TtClientDepLibs $(DEPTTLIB) $(DEPXTOOLLIB) $(DEPXLIB)
+#ifndef ExtraXawClientLibs
+# define ExtraXawClientLibs /**/
+#endif
+#ifndef ExtraXawClientDepLibs
+# define ExtraXawClientDepLibs /**/
+#endif
+#ifndef ExtraXawReqs
+# define ExtraXawReqs /**/
+#endif
+
#ifndef BuildDmx
#define BuildDmx YES
#endif
Index: xutils-dev/xorg-cf-files/FreeBSD.cf
===================================================================
--- xutils-dev.orig/xorg-cf-files/FreeBSD.cf
+++ xutils-dev/xorg-cf-files/FreeBSD.cf
@@ -570,6 +570,16 @@ XCOMM operating system: OSName (OSMajor
#endif
#endif
+#ifndef ExtraXawClientLibs
+# define ExtraXawClientLibs /**/
+#endif
+#ifndef ExtraXawClientDepLibs
+# define ExtraXawClientDepLibs /**/
+#endif
+#ifndef ExtraXawReqs
+# define ExtraXawReqs /**/
+#endif
+
/*
* A hack to work around an optimization problem with gcc 2.95.2 - 2.95.4
*/

17
debian/patches/06_font_path.diff vendored Normal file
View File

@ -0,0 +1,17 @@
Index: xutils-dev/xorg-cf-files/X11.tmpl
===================================================================
--- xutils-dev.orig/xorg-cf-files/X11.tmpl 2006-12-19 20:55:05.000000000 -0500
+++ xutils-dev/xorg-cf-files/X11.tmpl 2006-12-19 20:56:03.000000000 -0500
@@ -1512,10 +1512,10 @@
#define DocPdfDir $(DOCDIR)/PDF
#endif
#ifndef FontDir
-#define FontDir $(LIBDIR)/fonts
+#define FontDir /usr/share/fonts/X11
#endif
#ifndef FontEncDir
-#define FontEncDir $(LIBDIR)/fonts/encodings
+#define FontEncDir /usr/share/fonts/X11/encodings
#endif
#ifndef AdmDir
#define AdmDir /usr/adm

18
debian/patches/07_gnu_manpath.diff vendored Normal file
View File

@ -0,0 +1,18 @@
This patch is Debian-specific, see bugs.debian.org/638016
--- xutils-dev-7.6+5/xorg-cf-files/gnu.cf 2011-08-16 16:06:57.000000000 +0200
+++ xutils-dev-7.6+5/xorg-cf-files/gnu.cf.new 2011-08-16 16:09:58.000000000 +0200
@@ -29,6 +29,13 @@
# define GnuBinUtilsMajorVersion DefaultGnuBinUtilsMajorVersion
#endif
+#ifndef ProjectRoot
+# define ProjectRoot /usr
+#endif
+#ifndef ManDirectoryRoot
+# define ManDirectoryRoot /usr/share/man
+#endif
+
XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion)
XCOMM libc: (GnuCLibMajorVersion./**/GnuCLibMinorVersion./**/GnuCLibTeenyVersion)
XCOMM binutils: (GnuBinUtilsMajorVersion)

27
debian/patches/99_ppc64el.diff vendored Normal file
View File

@ -0,0 +1,27 @@
diff -Nru xutils-dev-7.7~1ubuntu5/xorg-cf-files/Imake.cf xutils-dev-7.7~1ubuntu6/xorg-cf-files/Imake.cf
--- xutils-dev-7.7~1ubuntu5/xorg-cf-files/Imake.cf 2013-07-30 12:22:15.000000000 -0600
+++ xutils-dev-7.7~1ubuntu6/xorg-cf-files/Imake.cf 2013-12-18 05:22:24.000000000 -0700
@@ -930,6 +930,11 @@
# undef __powerpc__
# endif
# ifdef __powerpc64__
+# ifdef __LITTLE_ENDIAN__
+# ifndef Ppc64elArchitecture
+# define Ppc64elArchitecture
+# endif
+# endif
# ifndef Ppc64Architecture
# define Ppc64Architecture
# endif
diff -Nru xutils-dev-7.7~1ubuntu5/xorg-cf-files/Imake.tmpl xutils-dev-7.7~1ubuntu6/xorg-cf-files/Imake.tmpl
--- xutils-dev-7.7~1ubuntu5/xorg-cf-files/Imake.tmpl 2013-07-30 16:53:35.000000000 -0600
+++ xutils-dev-7.7~1ubuntu6/xorg-cf-files/Imake.tmpl 2013-12-18 05:25:04.000000000 -0700
@@ -528,6 +528,8 @@
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(RsArchitecture)
#define ByteOrder X_BIG_ENDIAN
+#elif defined(Ppc64elArchitecture)
+#define ByteOrder X_LITTLE_ENDIAN
#elif defined(PpcArchitecture) || defined(Ppc64Architecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(HPArchitecture)

69
debian/patches/riscv64-support.patch vendored Normal file
View File

@ -0,0 +1,69 @@
Index: xutils-dev-7.7+5ubuntu1+riscv64.1/xorg-cf-files/Imake.cf
===================================================================
--- xutils-dev-7.7+5ubuntu1+riscv64.1.orig/xorg-cf-files/Imake.cf
+++ xutils-dev-7.7+5ubuntu1+riscv64.1/xorg-cf-files/Imake.cf
@@ -1042,6 +1042,10 @@ XCOMM Keep cpp from replacing path eleme
# define AArch64Architecture
# undef __aarch64__
# endif
+# if defined(__riscv) && (__riscv_xlen == 64)
+# define RISCV64Architecture
+# /* undef __riscv */
+# endif
#endif /* linux || __GLIBC__ */
#if (defined(__Lynx__) || defined(Lynx)) && (defined(i386) || defined(__i386__) || defined(__x86__) || defined(__powerpc__) || defined(__sparc__) || defined(sparc))
Index: xutils-dev-7.7+5ubuntu1+riscv64.1/xorg-cf-files/linux.cf
===================================================================
--- xutils-dev-7.7+5ubuntu1+riscv64.1.orig/xorg-cf-files/linux.cf
+++ xutils-dev-7.7+5ubuntu1+riscv64.1/xorg-cf-files/linux.cf
@@ -1111,6 +1111,15 @@ InstallNamedTargetNoClobber(install,file
# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64
#endif /* AArch64Architecture */
+#ifdef RISCV64Architecture
+# ifndef OptimizedCDebugFlags
+# define OptimizedCDebugFlags DefaultGcc2RISCV64Opt DefaultGcc2OptimizeOpt GccAliasingArgs
+# endif
+# define LinuxMachineDefines -D__riscv
+# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME
+# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64
+#endif /* RISCV64Architecture */
+
#ifndef StandardDefines
# ifdef __linux__
# define StandardDefines -Dlinux LinuxMachineDefines LinuxSourceDefines
Index: xutils-dev-7.7+5ubuntu1+riscv64.1/xorg-cf-files/xfree86.cf
===================================================================
--- xutils-dev-7.7+5ubuntu1+riscv64.1.orig/xorg-cf-files/xfree86.cf
+++ xutils-dev-7.7+5ubuntu1+riscv64.1/xorg-cf-files/xfree86.cf
@@ -2067,6 +2067,12 @@ XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japane
# endif
#endif
+#if HasGcc2 && defined(RISCV64Architecture)
+# ifndef DefaultGcc2RISCV64Opt
+# define DefaultGcc2RISCV64Opt DefaultGcc2OptimizeOpt GccAliasingArgs
+# endif
+#endif
+
#if HasGcc2 && defined(AlphaArchitecture)
# ifndef DefaultGcc2AxpOpt
# define DefaultGcc2AxpOpt DefaultGcc2OptimizeOpt GccAliasingArgs
Index: xutils-dev-7.7+5ubuntu1+riscv64.1/xorg-cf-files/xorg.cf
===================================================================
--- xutils-dev-7.7+5ubuntu1+riscv64.1.orig/xorg-cf-files/xorg.cf
+++ xutils-dev-7.7+5ubuntu1+riscv64.1/xorg-cf-files/xorg.cf
@@ -1584,6 +1584,12 @@ XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japane
# endif
#endif
+#if HasGcc2 && defined(RISCV64Architecture)
+# ifndef DefaultGcc2RISCV64Opt
+# define DefaultGcc2RISCV64Opt DefaultGcc2OptimizeOpt GccAliasingArgs
+# endif
+#endif
+
#if HasGcc2 && defined(AMD64Architecture)
# ifndef DefaultGcc2AMD64Opt
# define DefaultGcc2AMD64Opt DefaultGcc2OptimizeOpt GccAliasingArgs

7
debian/patches/series vendored Normal file
View File

@ -0,0 +1,7 @@
03_xutils-dev-FHS.diff
04_xutils-dev-debian.diff
05_xaw_without_xp.diff
06_font_path.diff
07_gnu_manpath.diff
99_ppc64el.diff
riscv64-support.patch

70
debian/rules vendored Executable file
View File

@ -0,0 +1,70 @@
#!/usr/bin/make -f
# debian/rules for the Debian xutils package.
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>
# Copyright © 2005 Daniel Stone <daniel@fooishbar.org>
# Copyright © 2005 David Nusinow <dnusinow@debian.org>
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# set this to the name of the main shlib's binary package
PACKAGE = xutils-dev
# This package contains multiple modules as shipped by upstream. Each module is # contained in a subdirectory in the root dir of the package. You must list each
# subdirectory explicitly so that the build system knows what to build
SUBDIRS= gccmakedep imake lndir makedepend util-macros xorg-cf-files
SUBDIRS_CHECK= makedepend
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
MAKEFLAGS += -j$(NUMJOBS)
endif
%:
dh $@ --with quilt,autotools-dev --parallel
override_dh_auto_configure: $(foreach dir, $(SUBDIRS), configure-$(dir)-stamp)
configure-%-stamp:
dh_auto_configure -D$* -B$*-build -- \
--disable-silent-rules \
--disable-ccmakedep \
--libdir=\$${exec_prefix}/lib \
$(shell DEB_CFLAGS_MAINT_APPEND=-Wall dpkg-buildflags --export=configure)
override_dh_auto_build: $(foreach dir, $(SUBDIRS), build-$(dir)-stamp)
build-%-stamp:
dh_auto_build -D$* -B$*-build
override_dh_auto_test: $(addprefix test-, $(SUBDIRS))
.PHONY: test-%
test-%:
dh_auto_test -D$* -B$*-build
override_dh_auto_install:
set -e; for FILE in $(SUBDIRS); do \
$(MAKE) -C $${FILE}-build DESTDIR=$(CURDIR)/debian/tmp install; \
done
override_dh_installdocs:
dh_installdocs debian/versions
override_dh_install:
dh_install --fail-missing
override_dh_auto_clean: $(addprefix clean-, $(SUBDIRS))
.PHONY: clean-%
clean-%:
dh_auto_clean -D$* -B$*-build
.PHONY: get-tarballs
get-tarballs: $(addprefix get-tarball-,$(SUBDIRS))
.PHONY: get-tarball-%
get-tarball-%:
uscan --no-conf --download --no-symlink --destdir . --package $* --upstream-version $(shell awk -F = '/^PACKAGE_VERSION=/ { print $$2 }' < $*/configure || echo 0) --watchfile debian/watch.$* || test $$? = 1
# vim:set ai noet sw=8 ts=8 tw=80:

60
debian/upstream/signing-key.asc vendored Normal file
View File

@ -0,0 +1,60 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1
mQGiBEab+moRBACDH5yKqS3wcc5bdxY7PBNuwKvF5TKMfagmSvuRDtZjjIIWaA/n
Z1KboV9Gq5g7kP7+Kfu+Qgd8u65eVsWwmPW10fXvj3aCU53glx2EdGdrHcgiyH2g
EQfPiyBw+trIppWFRV0IDXSLMA1FNC92t2nSG/VFHaPTVwcgkIRSfcXDvwCglGdE
a6f4uLqoNHP+m4yYnzapFuMD/R4+2AJDAvEWKDdYCGZzlawjAmmWyXrmT7/C/mx9
8qUR473l4buXjHgDkkXXlHqdzil1vK85PhrKzNJDCCmlHUJNz+QwiAMOLwpD+kwV
Pb57RG7y+a5JQ5+jtVw4RlUxZIk/wj2An9YBO3A5vR7PdjM32ZJCN2+aM4dYfNzQ
xQKTA/47icvBaBVTl9rztjg2pd2Aqpc1P/GsIYLGj7XjnnJvGAENBHSH1QjpZMJG
CTS9oJ+B0/wrIr+pA+MdFgYAb6ojMQJOO6UChjWWSGjMFcs/CeXhxlLBido3DtAE
TbNTwO6OEfAvdosvTdhJFnwvZlJ+zZGGy5CrF2Fd9PUe9tmASbQoQWxhbiBDb29w
ZXJzbWl0aCA8YWxhbmNAZnJlZWRlc2t0b3Aub3JnPohoBBMRAgAoAhsDBgsJCAcD
AgYVCAIJCgsEFgIDAQIeAQIXgAUCUXnRYgUJFEPYeAAKCRCi+54IHy0TDonxAKCP
cAgXNojuujUg5Wqi6v0RBFVSUgCggq1SsVEdq9NDWvXvkeGyNaBivSK0K0FsYW4g
Q29vcGVyc21pdGggPGFsYW4uY29vcGVyc21pdGhAc3VuLmNvbT6IZgQTEQIAJgIb
AwYLCQgHAwIEFQIIAwQWAgMBAh4BAheABQJRedFiBQkUQ9h4AAoJEKL7nggfLRMO
6sUAn0jl3h9rY4OJ13Lu7nsKclyhDpOqAKCFgTmaDGRuDRxloLg9jftrn7a7vrQu
QWxhbiBDb29wZXJzbWl0aCA8YWxhbi5jb29wZXJzbWl0aEBvcmFjbGUuY29tPohr
BBMRAgArAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAIZAQUCUXnRYgUJFEPY
eAAKCRCi+54IHy0TDtBZAJ9IgVVNoFIPRjTsNjcSFaLznuDRJgCcC/WgV312IrxS
Q8PRAyEgozSB9Ke5Ag0ERpv6bxAIAJp5aUlho5rUhpS6ik7spsAQFPRuycPKMNu0
J4F0v/OoPz085soV8ytLj4HqCGk2Zamh1jSgliZwuk9m7V7Wgxx+nBJawpWDX/eK
LObErfDwQ4dfOFvjbXLQMmNnQNaUGIWLPP3l8GuBOHMq60Bu+TPgh627vUntL5RE
QEQqTXIzWC6U10QsDblLwIvdOVSdGF5xl/N1myXzSKvrsZwWtoFc8G9v9hcCjhtN
1sm9b7Ojc51iZXvcetcvPy5RA6AUW3yEExaedUdLnvIF9sjFYIfJWFVYh2AgavnG
re6fF+NV2v3zfx3wRT7H9//m4YIDYJmgZgyQccXegTwfGBIq3osAAwYH/1FiMUMM
ES5Ilz2nDqId+DCWECAU6wgvIFRcXrZWxDxB+ZrnmTCXoAD0xedpfOkRHp8XTVc/
9MU+wQ+lZRx2OQ6MJW0XGuFvHm94KZF/8HzWA2Ah7U4n0+3sLpk6zWceZq2zZNF0
yVTjwD98+xNK1Q9sP8aOKdtg8yMH3hisKR6rdW+mfX5q0Q8Gol2hZsFH/qyIhnPz
hXDknuOh8E5iMkzrejVXUEn++Yzj23XjP59SObLznVkyxI+kBI9qvVEPfFBDybjH
WqLcgRcCpXAzjizEi+/d31iDa2ErJHV4R42obecFqiPnoDtiX3IiP7z9fmxM4aWP
ZZRqvq+1ht5wkn+ISQQYEQIACQUCRpv6bwIbDAAKCRCi+54IHy0TDoLoAKCHYRpw
/XfyEunw1YL/uMZzl78qIQCdFVcXNbqD83qVhW4Ly7hyDL8o0aK5Ag0EUXnVIQEQ
AKHpjOmY056n0tsZoW9q5egsMcl5tKC8uimrhO05nnq+5/60/YedC++V9c9b/3/X
7O28LyBkAtBgD0xJZSDQ0DhTzKAp6AzjQtBvI68uinGwxSjT+oQpPMxqhA1I0kzo
EDCdEqV+HsVOAEdbAi/tP9bbdTDzwVc8MWDriamBUqc53Rb00Mffy9435UgTS4gA
hMwANhy6XZmOMBhITOzxFJUEDTDJtLbE0b1jPRQS7NHQgak1inmuvPMc3wAuoEcS
CSt1xupbYsBoXOjK5wC/eE1LIdZoRyW2OkT140DqDZ8zfRID860hnirnYgb09TPN
tj93pudUAUt6T9+tcLN4/rxhxHOwse66KGHO4bQ1rZ6mfco6SYd9V60cL6hC2eMe
cyxZliMu17lj7EX8lxUH+omIgHc7HGoyUR6V+WB60cxWj5v05zdeLeZ2aLBcPFhx
lfDESm8f4ezdJSDS1QZmC0P5h3RJfhhfmdBr8kHzr7111D1/O71Av1VV5FyJ9YxU
Sxp4IPuzK7JbbgVHcA6PvXrDzWUslmZgPADpKH4hTmG/NdCqhEXcufvY6s5yNksB
8X3ReNvuSSyfGnRz3kvtyK0XzC7KRX2PquLI6A8KJprHwZGqEB1NDG8b2iaYnghO
jyfIYEVQF3nGfaBwv4lrCPEoZSUaK8f/NQZjNU8NQyTnABEBAAGJAm0EGBEKAA8F
AlF51SECGwIFCQlmAYACKQkQovueCB8tEw7BXSAEGQEKAAYFAlF51SEACgkQz98U
iCjGQqfW5g//dOdJHt23cdMyz5VADaE7u+L0E+eX9GtHF4J649eXsui59EtbHh2n
XdGhd5SqQ8FDi9GCEKaQ4S31n/YBLEBCkj7R0IMikW2o78/JxDovB8+aL606hgma
fNVx1aIshIglrl8Xlu3sjeAvG48W6YjdL2mfrIDHjIVwOZsMihbOJvST6Q3upHdn
mjDtM5HCQmI5NEXDWYj6IZuhJnnrDWwNsyYV4KPoUBxAcqIyCeZbVssuWWnHPXX8
VavVq98vpVynfGzGYpJbDj19C/utMjKGI5dcvbVaucA7X/oktxrxS6SBDhuIaAE9
4ZHlbxqfyHfETI/La2Z/ALDAtYdhJR2gSkTHyKSW1QqYlulSfB//lnna44mmTuRO
NbDNgb0FGSvtsBMZ80iHDqPgUfS60kxCfFrsSGfTFU+X4QAzpTtUJEcr+J4HULDe
MfwOgghVfmKxFXWfud8xDaCXuywLTtVgMCZp4P7MAyuJlaxsFTu+c1Vly94grk4U
MtALLMqCXSosA490gLTSdg3HSwxt2Q/LJdy427ZIMvjGXIruns8U/OmL9dVgWu3b
JHsL68Skx8Ts63qTN9QXM/PB+8VwOaC7PJ+g6t40DleOmdsS8cN31yf5KB8rsL4u
n4u1yrMJfpnSblPMu5wJi3kjoA+Dd5ZFqx9nTi4wBjfVYGCPsleq59K8kQCYx1Cn
lZcq630ITy9dB/aHCQry2gCbBwZ2Rsf9kr05S8uLhlwW3vRSvRs=
=tc6G
-----END PGP PUBLIC KEY BLOCK-----

56
debian/versions vendored Normal file
View File

@ -0,0 +1,56 @@
Version tables
==============
The idea is to ease version lookup by providing an upstream to Debian
version mapping, for each individual package. For conciseness, Debian
versions are mentioned starting with the revision available in
squeeze. As the most useful, util-macros comes first.
util-macros | Debian
------------------------
1.19.0 | 1:7.7+3
1.18.0 | 1:7.7+2
1.17.1 | 1:7.7+1
1.17.0 | 1:7.7~1
1.15.0 | 1:7.6+5
1.14.0 | 1:7.6+4
1.13.0 | 1:7.6+3
1.12.0 | 1:7.6+2
1.10.1 | 1:7.6+1
1.10.0 | 1:7.5+4
gccmakedep | Debian
------------------------
1.0.3 | 1:7.7+3
1.0.2 | 1:7.5+4
imake | Debian
------------------------
1.0.7 | 1:7.7+3
1.0.6 | 1:7.7+1
1.0.5 | 1:7.7~1
1.0.4 | 1:7.5+5
lndir | Debian
------------------------
1.0.3 | 1:7.7~1
1.0.2 | 1:7.5+5
makedepend | Debian
------------------------
1.0.5 | 1:7.7+1
1.0.4 | 1:7.7~1
1.0.3 | 1:7.5+5
1.0.2 | 1:7.5+4
xorg-cf-files | Debian
------------------------
1.0.6 | 1:7.7+5
1.0.5 | 1:7.7+1
1.0.4 | 1:7.6+1
1.0.3 | 1:7.5+4

4
debian/watch.gccmakedep vendored Normal file
View File

@ -0,0 +1,4 @@
#git=git://anongit.freedesktop.org/xorg/util/gccmakedep
version=3
opts="pgpsigurlmangle=s/$/.sig/" \
https://xorg.freedesktop.org/releases/individual/util/ gccmakedep-(.*)\.tar\.gz

4
debian/watch.imake vendored Normal file
View File

@ -0,0 +1,4 @@
#git=git://anongit.freedesktop.org/xorg/util/imake
version=3
opts="pgpsigurlmangle=s/$/.sig/" \
https://xorg.freedesktop.org/releases/individual/util/ imake-(.*)\.tar\.gz

4
debian/watch.lndir vendored Normal file
View File

@ -0,0 +1,4 @@
#git=git://anongit.freedesktop.org/xorg/util/lndir
version=3
opts="pgpsigurlmangle=s/$/.sig/" \
https://xorg.freedesktop.org/releases/individual/util/ lndir-(.*)\.tar\.gz

4
debian/watch.makedepend vendored Normal file
View File

@ -0,0 +1,4 @@
#git=git://anongit.freedesktop.org/xorg/util/makedepend
version=3
opts="pgpsigurlmangle=s/$/.sig/" \
https://xorg.freedesktop.org/releases/individual/util/ makedepend-(.*)\.tar\.gz

4
debian/watch.util-macros vendored Normal file
View File

@ -0,0 +1,4 @@
#git=git://anongit.freedesktop.org/xorg/util/macros
version=3
opts="pgpsigurlmangle=s/$/.sig/" \
https://xorg.freedesktop.org/releases/individual/util/ util-macros-(.*)\.tar\.gz

4
debian/watch.xorg-cf-files vendored Normal file
View File

@ -0,0 +1,4 @@
#git=git://anongit.freedesktop.org/xorg/util/cf
version=3
opts="pgpsigurlmangle=s/$/.sig/" \
https://xorg.freedesktop.org/releases/individual/util/ xorg-cf-files-(.*)\.tar\.gz

147
debian/xutils-dev.install vendored Normal file
View File

@ -0,0 +1,147 @@
usr/share/man/man1/gccmakedep.1
usr/share/man/man1/imake.1
usr/share/man/man1/makeg.1
usr/share/man/man1/xmkmf.1
usr/share/man/man1/mergelib.1
usr/share/man/man1/revpath.1
usr/share/man/man1/mkdirhier.1
usr/share/man/man1/cleanlinks.1
usr/share/man/man1/mkhtmlindex.1
usr/share/man/man1/lndir.1
usr/share/man/man1/makedepend.1
usr/share/aclocal/xorg-macros.m4
usr/bin/gccmakedep
usr/bin/imake
usr/bin/revpath
usr/bin/makeg
usr/bin/xmkmf
usr/bin/mergelib
usr/bin/mkdirhier
usr/bin/cleanlinks
usr/bin/mkhtmlindex
usr/bin/lndir
usr/bin/makedepend
usr/lib/X11/config
usr/lib/X11/config/host.def
usr/lib/X11/config/date.def
usr/lib/X11/config/version.def
usr/lib/X11/config/Imake.rules
usr/lib/X11/config/Motif.rules
usr/lib/X11/config/OpenBSDLib.rules
usr/lib/X11/config/Win32.rules
usr/lib/X11/config/X11.rules
usr/lib/X11/config/bsdiLib.rules
usr/lib/X11/config/bsdLib.rules
usr/lib/X11/config/cde.rules
usr/lib/X11/config/cross.rules
usr/lib/X11/config/cygwin.rules
usr/lib/X11/config/mingw.rules
usr/lib/X11/config/darwinLib.rules
usr/lib/X11/config/gnuLib.rules
usr/lib/X11/config/hpLib.rules
usr/lib/X11/config/ibmLib.rules
usr/lib/X11/config/lnxLib.rules
usr/lib/X11/config/lnxdoc.rules
usr/lib/X11/config/necLib.rules
usr/lib/X11/config/noop.rules
usr/lib/X11/config/nto.rules
usr/lib/X11/config/oldlib.rules
usr/lib/X11/config/os2.rules
usr/lib/X11/config/os2Lib.rules
usr/lib/X11/config/osfLib.rules
usr/lib/X11/config/scoLib.rules
usr/lib/X11/config/sequentLib.rules
usr/lib/X11/config/sgiLib.rules
usr/lib/X11/config/sunLib.rules
usr/lib/X11/config/sv3Lib.rules
usr/lib/X11/config/sv4Lib.rules
usr/lib/X11/config/QNX4.rules
usr/lib/X11/config/xf86.rules
usr/lib/X11/config/Imake.tmpl
usr/lib/X11/config/Library.tmpl
usr/lib/X11/config/Motif.tmpl
usr/lib/X11/config/OpenBSDLib.tmpl
usr/lib/X11/config/Server.tmpl
usr/lib/X11/config/ServerLib.tmpl
usr/lib/X11/config/Threads.tmpl
usr/lib/X11/config/WinLib.tmpl
usr/lib/X11/config/X11.tmpl
usr/lib/X11/config/bsdiLib.tmpl
usr/lib/X11/config/bsdLib.tmpl
usr/lib/X11/config/cde.tmpl
usr/lib/X11/config/cygwin.tmpl
usr/lib/X11/config/mingw.tmpl
usr/lib/X11/config/darwinLib.tmpl
usr/lib/X11/config/hpLib.tmpl
usr/lib/X11/config/gnuLib.tmpl
usr/lib/X11/config/ibmLib.tmpl
usr/lib/X11/config/lnxLib.tmpl
usr/lib/X11/config/lnxdoc.tmpl
usr/lib/X11/config/necLib.tmpl
usr/lib/X11/config/os2Lib.tmpl
usr/lib/X11/config/osfLib.tmpl
usr/lib/X11/config/sgiLib.tmpl
usr/lib/X11/config/sunLib.tmpl
usr/lib/X11/config/sv3Lib.tmpl
usr/lib/X11/config/sv4Lib.tmpl
usr/lib/X11/config/xf86.tmpl
usr/lib/X11/config/xorg.tmpl
usr/lib/X11/config/cross.def
usr/lib/X11/config/site.def
usr/lib/X11/config/xf86site.def
usr/lib/X11/config/xorgsite.def
usr/lib/X11/config/xorgversion.def
usr/lib/X11/config/Imake.cf
usr/lib/X11/config/Amoeba.cf
usr/lib/X11/config/DGUX.cf
usr/lib/X11/config/dmx.cf
usr/lib/X11/config/DragonFly.cf
usr/lib/X11/config/FreeBSD.cf
usr/lib/X11/config/Mips.cf
usr/lib/X11/config/NetBSD.cf
usr/lib/X11/config/OpenBSD.cf
usr/lib/X11/config/Oki.cf
usr/lib/X11/config/cygwin.cf
usr/lib/X11/config/mingw.cf
usr/lib/X11/config/Win32.cf
usr/lib/X11/config/apollo.cf
usr/lib/X11/config/bsd.cf
usr/lib/X11/config/bsdi.cf
usr/lib/X11/config/convex.cf
usr/lib/X11/config/cray.cf
usr/lib/X11/config/fujitsu.cf
usr/lib/X11/config/generic.cf
usr/lib/X11/config/gnu.cf
usr/lib/X11/config/hp.cf
usr/lib/X11/config/ibm.cf
usr/lib/X11/config/isc.cf
usr/lib/X11/config/linux.cf
usr/lib/X11/config/luna.cf
usr/lib/X11/config/macII.cf
usr/lib/X11/config/mach.cf
usr/lib/X11/config/minix.cf
usr/lib/X11/config/moto.cf
usr/lib/X11/config/ncr.cf
usr/lib/X11/config/nec.cf
usr/lib/X11/config/nto.cf
usr/lib/X11/config/os2.cf
usr/lib/X11/config/osf1.cf
usr/lib/X11/config/pegasus.cf
usr/lib/X11/config/sco.cf
usr/lib/X11/config/sco5.cf
usr/lib/X11/config/sequent.cf
usr/lib/X11/config/sgi.cf
usr/lib/X11/config/sony.cf
usr/lib/X11/config/sun.cf
usr/lib/X11/config/svr3.cf
usr/lib/X11/config/svr4.cf
usr/lib/X11/config/ultrix.cf
usr/lib/X11/config/usl.cf
usr/lib/X11/config/lynx.cf
usr/lib/X11/config/x386.cf
usr/lib/X11/config/QNX4.cf
usr/lib/X11/config/darwin.cf
usr/lib/X11/config/xfree86.cf
usr/lib/X11/config/xorg.cf
usr/share/pkgconfig
usr/share/util-macros

1
debian/xutils-dev.lintian-overrides vendored Normal file
View File

@ -0,0 +1 @@
extra-license-file usr/lib/X11/config/bsd.cf

12
gccmakedep/COPYING Normal file
View File

@ -0,0 +1,12 @@
This is a stub file. This package has not yet had its complete licensing
information compiled. Please see the individual source files for details on
your rights to use and modify this software.
Please submit updated COPYING files to the Xorg bugzilla:
https://bugs.freedesktop.org/enter_bug.cgi?product=xorg
All licensing questions regarding this software should be directed at the
Xorg mailing list:
http://lists.freedesktop.org/mailman/listinfo/xorg

191
gccmakedep/ChangeLog Normal file
View File

@ -0,0 +1,191 @@
commit 1f01500a313ed91f093e1d489162742e3d588dde
Author: Julien Cristau <jcristau@debian.org>
Date: Wed May 21 20:20:47 2014 +0200
Bump to 1.0.3
Signed-off-by: Julien Cristau <jcristau@debian.org>
commit 855a9cb40ca734e1c99c3a1032630281d99572d1
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jun 4 21:36:36 2011 -0700
Use autoconf instead of XORG_RAWCPP to substitute text in gccmakedep
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
commit 7abbe73c0ead0f335f2e39a486ac3004b8c30b08
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jun 4 21:27:24 2011 -0700
config: use util-macros 1.8 for man page substitutions
Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
The value of MAN_SUBST is the same for all X.Org packages.
Use automake provided $(AM_V_GEN) and XORG_DEFAULT_OPTIONS provided $(SED)
Enables silent rule and use platform appropriate version of sed.
Use $(CHANGELOG_CMD) provided by XORG_DEFAULT_OPTIONS
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 7718a63128381dc22021e9a7bee5a477771d1be0
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jun 4 21:23:33 2011 -0700
config: Use AC_CONFIG_FILES to list output files instead of AC_OUTPUT
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 0df68dd170d1be2fbd5e87329164dae97fb18ad6
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jun 4 21:17:30 2011 -0700
config: Add missing AC_CONFIG_SRCDIR
Regroup AC statements under the Autoconf initialization section.
Regroup AM statements under the Automake initialization section.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 2921a02d56ab550ac307fc8ad313ad76c7b05f03
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Sat Jun 4 21:15:49 2011 -0700
config: update AC_PREREQ statement to 2.60
Unrelated to the previous patches, the new value simply reflects
the reality that the minimum level for autoconf to configure
all x.org modules is 2.60 dated June 2006.
ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit a29912840d4baccc6d3819e9a2b25ba9d5cb7f7e
Author: Peter Breitenlohner <peb@mppmu.mpg.de>
Date: Fri Dec 3 16:13:32 2010 -0500
Fix gccmakedep from mutilates arguments containing "'" or " * "
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=7414
Reviewed-by: Jesse Adkins <jesserayadkins@gmail.com>
Signed-off-by: Matt Turner <mattst88@gmail.com>
commit fa623ff1e2f48336f09d38c50c598890e21fa1cc
Author: James Cloos <cloos@jhcloos.com>
Date: Thu Dec 6 16:39:16 2007 -0500
Replace static ChangeLog with dist-hook to generate from git log
commit fe134552168001a00bf8366ebda4e605e57dc795
Author: Adam Jackson <ajax@nwnk.net>
Date: Fri May 19 18:42:17 2006 +0000
Bump to 1.0.2
commit d54c03e6f9fd552a1c9440cbc25d85c7cb48614e
Author: Donnie Berkholz <spyderous@gentoo.org>
Date: Mon Feb 6 18:16:59 2006 +0000
RM needed some more quoting.
commit 704a0d6b153b25093fac55e7ef27eba419fb92a0
Author: Donnie Berkholz <spyderous@gentoo.org>
Date: Mon Feb 6 08:08:04 2006 +0000
RM should be 'rm -f' for monolithic compatibility.
commit de3023cbb9d973bb8c8539ebdd71322f5c415ecf
Author: Kevin E Martin <kem@kem.org>
Date: Wed Dec 21 02:30:07 2005 +0000
Update package version for X11R7 release.
commit 5b28ecda846387528406d802eeaaf4a7d6090a84
Author: Adam Jackson <ajax@nwnk.net>
Date: Mon Dec 19 16:36:01 2005 +0000
Stub COPYING files
commit e2dab0baa71298840cdd322cbda37a7b826136dc
Author: Kevin E Martin <kem@kem.org>
Date: Thu Dec 15 00:24:40 2005 +0000
Update package version number for final X11R7 release candidate.
commit de02b8908884953fe99478b18032e619f39db90d
Author: Kevin E Martin <kem@kem.org>
Date: Fri Dec 9 03:45:24 2005 +0000
Add man page processing.
commit bcddba78bfef8b6b7590705842ee315fed7fb5b9
Author: Adam Jackson <ajax@nwnk.net>
Date: Thu Dec 8 19:22:53 2005 +0000
distcheck fix
commit 97f1f13964af776adf04823f7ee9b683dd224ca0
Author: Adam Jackson <ajax@nwnk.net>
Date: Thu Dec 8 19:18:17 2005 +0000
Bug #4807: Modularized gccmakedep (Joshua Baergen)
commit 8d57eb7ac9b9af835c83ef1b3e58a152bdd3bdc6
Author: Adam Jackson <ajax@nwnk.net>
Date: Thu Dec 8 19:17:54 2005 +0000
Bug #4807: Modularized gccmakedep (Joshua Baergen)
commit 46b58da4e6c675859199be64db0c9b5297e1aa14
Author: Egbert Eich <eich@suse.de>
Date: Fri Apr 23 18:42:00 2004 +0000
Merging XORG-CURRENT into trunk
commit 2449984d931f6f4612ee0a5902f2fa1a09a10d06
Author: Egbert Eich <eich@suse.de>
Date: Sun Mar 14 08:27:28 2004 +0000
Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
commit dc98d637f62438a6ee33702affcf46127eeb9ca1
Author: Egbert Eich <eich@suse.de>
Date: Wed Mar 3 12:09:38 2004 +0000
Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
commit e5267fa52264d70a0337d526082173083b0a8f1d
Author: Egbert Eich <eich@suse.de>
Date: Thu Feb 26 13:34:16 2004 +0000
readding XFree86's cvs IDs
commit 7ce280c3ad733193da8514f4bd663aa15092e65c
Author: Egbert Eich <eich@suse.de>
Date: Thu Feb 26 09:21:15 2004 +0000
Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
commit 04573316bc083ce18e4488042ec0d0bf305ec06a
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Tue Nov 25 19:26:55 2003 +0000
XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
commit f97ff81ca2073c9301771fd7a3534b2b86e20833
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 16:48:20 2003 +0000
XFree86 4.3.0.1
commit 4ce164596212363bbfbd35b982f97a7c8fca13f8
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 16:48:20 2003 +0000
Initial revision

46
gccmakedep/Makefile.am Normal file
View File

@ -0,0 +1,46 @@
#
# Copyright 2005 Red Hat, Inc.
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of Red Hat not be used in
# advertising or publicity pertaining to distribution of the software without
# specific, written prior permission. Red Hat makes no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
# RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
# EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
bin_SCRIPTS = gccmakedep
appmandir = $(APP_MAN_DIR)
appman_PRE = gccmakedep.man
appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
CLEANFILES = $(appman_DATA)
SUFFIXES = .$(APP_MAN_SUFFIX) .man
.man.$(APP_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
EXTRA_DIST = $(appman_PRE)
MAINTAINERCLEANFILES = ChangeLog
.PHONY: ChangeLog
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog

717
gccmakedep/Makefile.in Normal file
View File

@ -0,0 +1,717 @@
# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
#
# Copyright 2005 Red Hat, Inc.
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of Red Hat not be used in
# advertising or publicity pertaining to distribution of the software without
# specific, written prior permission. Red Hat makes no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
# RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
# EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = .
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/configure $(am__configure_deps) \
$(srcdir)/gccmakedep.in COPYING ChangeLog compile config.guess \
config.sub install-sh missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES = gccmakedep
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(appmandir)"
SCRIPTS = $(bin_SCRIPTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
DATA = $(appman_DATA)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
if test -d "$(distdir)"; then \
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -rf "$(distdir)" \
|| { sleep 5 && rm -rf "$(distdir)"; }; \
else :; fi
am__post_remove_distdir = $(am__remove_distdir)
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
GZIP_ENV = --best
DIST_TARGETS = dist-bzip2 dist-gzip
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
APP_MAN_DIR = @APP_MAN_DIR@
APP_MAN_SUFFIX = @APP_MAN_SUFFIX@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BASE_CFLAGS = @BASE_CFLAGS@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CHANGELOG_CMD = @CHANGELOG_CMD@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CWARNFLAGS = @CWARNFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FILE_MAN_DIR = @FILE_MAN_DIR@
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_CMD = @INSTALL_CMD@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_MAN_DIR = @LIB_MAN_DIR@
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MAN_SUBSTS = @MAN_SUBSTS@
MISC_MAN_DIR = @MISC_MAN_DIR@
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRICT_CFLAGS = @STRICT_CFLAGS@
STRIP = @STRIP@
VERSION = @VERSION@
XORG_MAN_PAGE = @XORG_MAN_PAGE@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
bin_SCRIPTS = gccmakedep
appmandir = $(APP_MAN_DIR)
appman_PRE = gccmakedep.man
appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
CLEANFILES = $(appman_DATA)
SUFFIXES = .$(APP_MAN_SUFFIX) .man
EXTRA_DIST = $(appman_PRE)
MAINTAINERCLEANFILES = ChangeLog
all: all-am
.SUFFIXES:
.SUFFIXES: .$(APP_MAN_SUFFIX) .man
am--refresh: Makefile
@:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
$(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
echo ' $(SHELL) ./config.status'; \
$(SHELL) ./config.status;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
gccmakedep: $(top_builddir)/config.status $(srcdir)/gccmakedep.in
cd $(top_builddir) && $(SHELL) ./config.status $@
install-binSCRIPTS: $(bin_SCRIPTS)
@$(NORMAL_INSTALL)
@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
$(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
done | \
sed -e 'p;s,.*/,,;n' \
-e 'h;s|.*|.|' \
-e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) { files[d] = files[d] " " $$1; \
if (++n[d] == $(am__install_max)) { \
print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
else { print "f", d "/" $$4, $$1 } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \
$(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
} \
; done
uninstall-binSCRIPTS:
@$(NORMAL_UNINSTALL)
@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 's,.*/,,;$(transform)'`; \
dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir)
install-appmanDATA: $(appman_DATA)
@$(NORMAL_INSTALL)
@list='$(appman_DATA)'; test -n "$(appmandir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(appmandir)'"; \
$(MKDIR_P) "$(DESTDIR)$(appmandir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(appmandir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(appmandir)" || exit $$?; \
done
uninstall-appmanDATA:
@$(NORMAL_UNINSTALL)
@list='$(appman_DATA)'; test -n "$(appmandir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(appmandir)'; $(am__uninstall_files_from_dir)
tags TAGS:
ctags CTAGS:
cscope cscopelist:
distdir: $(DISTFILES)
$(am__remove_distdir)
test -d "$(distdir)" || mkdir "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$(top_distdir)" distdir="$(distdir)" \
dist-hook
-test -n "$(am__skip_mode_fix)" \
|| find "$(distdir)" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__post_remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
$(am__post_remove_distdir)
dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
$(am__post_remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)
dist-tarZ: distdir
@echo WARNING: "Support for shar distribution archives is" \
"deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__post_remove_distdir)
dist-shar: distdir
@echo WARNING: "Support for distribution archives compressed with" \
"legacy program 'compress' is deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__post_remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
$(am__post_remove_distdir)
dist dist-all:
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
$(am__post_remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lz*) \
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
chmod -R a-w $(distdir)
chmod u+w $(distdir)
mkdir $(distdir)/_build $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build \
&& ../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \
--srcdir=.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
distuninstallcheck \
&& chmod -R a-w "$$dc_install_base" \
&& ({ \
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
} || { rm -rf "$$dc_destdir"; exit 1; }) \
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
&& cd "$$am__cwd" \
|| exit 1
$(am__post_remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
@test -n '$(distuninstallcheck_dir)' || { \
echo 'ERROR: trying to run $@ with an empty' \
'$$(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
$(am__cd) '$(distuninstallcheck_dir)' || { \
echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
fi ; \
$(distuninstallcheck_listfiles) ; \
exit 1; } >&2
distcleancheck: distclean
@if test '$(srcdir)' = . ; then \
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
exit 1 ; \
fi
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left in build directory after distclean:" ; \
$(distcleancheck_listfiles) ; \
exit 1; } >&2
check-am: all-am
check: check-am
all-am: Makefile $(SCRIPTS) $(DATA)
installdirs:
for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(appmandir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-appmanDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-binSCRIPTS
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-appmanDATA uninstall-binSCRIPTS
.MAKE: install-am install-strip
.PHONY: all all-am am--refresh check check-am clean clean-generic \
cscopelist-am ctags-am dist dist-all dist-bzip2 dist-gzip \
dist-hook dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
distcheck distclean distclean-generic distcleancheck distdir \
distuninstallcheck dvi dvi-am html html-am info info-am \
install install-am install-appmanDATA install-binSCRIPTS \
install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags-am uninstall uninstall-am \
uninstall-appmanDATA uninstall-binSCRIPTS
.man.$(APP_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
.PHONY: ChangeLog
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

3271
gccmakedep/aclocal.m4 vendored Normal file

File diff suppressed because it is too large Load Diff

347
gccmakedep/compile Executable file
View File

@ -0,0 +1,347 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2012-10-14.11; # UTC
# Copyright (C) 1999-2013 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# 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, 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, see <http://www.gnu.org/licenses/>.
# 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.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

1558
gccmakedep/config.guess vendored Executable file

File diff suppressed because it is too large Load Diff

1791
gccmakedep/config.sub vendored Executable file

File diff suppressed because it is too large Load Diff

11813
gccmakedep/configure vendored Executable file

File diff suppressed because it is too large Load Diff

40
gccmakedep/configure.ac Normal file
View File

@ -0,0 +1,40 @@
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, and that the name of Red Hat not be used in
dnl advertising or publicity pertaining to distribution of the software without
dnl specific, written prior permission. Red Hat makes no
dnl representations about the suitability of this software for any purpose. It
dnl is provided "as is" without express or implied warranty.
dnl
dnl RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
dnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
dnl EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
dnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
dnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
dnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
dnl PERFORMANCE OF THIS SOFTWARE.
dnl
dnl Process this file with autoconf to create configure.
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([gccmakedep],[1.0.3],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],[gccmakedep])
AC_CONFIG_SRCDIR([Makefile.am])
# Initialize Automake
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
m4_ifndef([XORG_MACROS_VERSION],
[m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
AC_CONFIG_FILES([Makefile gccmakedep])
AC_OUTPUT

130
gccmakedep/gccmakedep.in Normal file
View File

@ -0,0 +1,130 @@
#!/bin/sh
#
# makedepend which uses 'gcc -M'
#
# $XFree86: xc/config/util/gccmdep.cpp,v 3.10tsi Exp $
#
# Based on mdepend.cpp and code supplied by Hongjiu Lu <hjl@nynexst.com>
#
TMP=mdep$$.tmp
CC="@CC@"
RM="rm -f"
LN="ln"
MV="mv"
${RM} ${TMP}
trap "${RM} ${TMP}*; exit 1" 1 2 15
trap "${RM} ${TMP}*; exit 0" 1 2 13
files=
makefile=
endmarker=
magic_string='# DO NOT DELETE'
append=n
args=
while [ $# != 0 ]; do
if [ "$endmarker"x != x -a "$endmarker" = "$1" ]; then
endmarker=
else
case "$1" in
-D*|-I*|-U*)
# arg may contain single quotes
qarg=`echo "$1" | sed "s/'/'\\\\\\\\''/g"`
args="$args '$qarg'"
;;
-g*|-O*)
;;
*)
if [ "$endmarker"x = x ]; then
case $1 in
# ignore these flags
-w|-o|-cc)
shift
;;
-v)
;;
-s)
magic_string="$2"
shift
;;
-f*)
if [ "$1" = "-f-" ]; then
makefile="-"
elif [ "$1" = "-f" ]; then
makefile="$2"
shift
else
echo "$1" | sed 's/^\-f//' >${TMP}arg
makefile="`cat ${TMP}arg`"
rm -f ${TMP}arg
fi
;;
--*)
endmarker=`echo $1 | sed 's/^\-\-//'`
if [ "$endmarker"x = x ]; then
endmarker="--"
fi
;;
-a)
append=y
;;
-*)
echo "Unknown option '$1' ignored" 1>&2
;;
*)
# filename may contain blanks
files="$files '$1'"
;;
esac
fi
;;
esac
fi
shift
done
if [ x"$files" = x ]; then
# Nothing to do
exit 0
fi
case "$makefile" in
'')
if [ -r makefile ]; then
makefile=makefile
elif [ -r Makefile ]; then
makefile=Makefile
else
echo 'no makefile or Makefile found' 1>&2
exit 1
fi
;;
esac
if [ X"$makefile" != X- ]; then
if [ x"$append" = xn ]; then
sed -e "/^$magic_string/,\$d" < $makefile > $TMP
echo "$magic_string" >> $TMP
else
cp $makefile $TMP
fi
fi
CMD="$CC -M $args $files"
if [ X"$makefile" != X- ]; then
CMD="$CMD >> $TMP"
fi
# Do not wildcard expand '*' in args
eval "$CMD"
if [ X"$makefile" != X- ]; then
$RM ${makefile}.bak
$MV $makefile ${makefile}.bak
$MV $TMP $makefile
fi
$RM ${TMP}*
exit 0

126
gccmakedep/gccmakedep.man Normal file
View File

@ -0,0 +1,126 @@
.TH gccmakedep 1 __vendorversion__
.SH NAME
gccmakedep \- create dependencies in makefiles using 'gcc -M'
.SH SYNOPSIS
.B gccmakedep
[
.BI \-s separator
] [
.BI \-f makefile
] [
.BI \-a
] [
\-\^\-
.I options
\-\^\-
]
.I sourcefile
\&.\|.\|.
.SH DESCRIPTION
The
.B gccmakedep
program calls 'gcc -M' to output
.I makefile
rules describing the dependencies of each
.IR sourcefile ,
so that
.BR make (1)
knows which object files must be recompiled when a dependency has changed.
.PP
By default,
.B gccmakedep
places its output in the file named
.I makefile
if it exists, otherwise
.I Makefile.
An alternate makefile may be specified with the
.B \-f
option.
It first searches the makefile for a line beginning with
.sp
\& # DO NOT DELETE
.sp
or one provided with the
.B \-s
option, as a delimiter for the dependency output.
If it finds it, it will delete everything following this up to the end of
the makefile and put the output after this line.
If it doesn't find it, the program will append the string to the makefile
and place the output after that.
.SH EXAMPLE
Normally,
.B gccmakedep
will be used in a makefile target so that typing 'make depend' will bring
the dependencies up to date for the makefile.
For example,
.nf
SRCS\0=\0file1.c\0file2.c\0.\|.\|.
CFLAGS\0=\0\-O\0\-DHACK\0\-I\^.\^.\^/foobar\0\-xyz
depend:
gccmakedep\0\-\^\-\0$(CFLAGS)\0\-\^\-\0$(SRCS)
.fi
.SH OPTIONS
The program will ignore any option that it does not understand, so you may
use the same arguments that you would for
.BR gcc (1),
including
.B \-D
and
.B \-U
options to define and undefine symbols and
.B \-I
to set the include path.
.TP
.B \-a
Append the dependencies to the file instead of replacing existing
dependencies.
.TP
.BI \-f makefile
Filename.
This allows you to specify an alternate makefile in which
.B gccmakedep
can place its output.
Specifying \(lq\-\(rq as the file name (that is,
.BR \-f\- )
sends the output to standard output instead of modifying an existing file.
.TP
.BI \-s string
Starting string delimiter.
This option permits you to specify a different string for
.B gccmakedep
to look for in the makefile.
The default is \(lq# DO NOT DELETE\(rq.
.TP
.BI \-\^\- " options " \-\^\-
If
.B gccmakedep
encounters a double hyphen (\-\^\-) in the argument list, then any
unrecognized arguments following it will be silently ignored.
A second double hyphen terminates this special treatment.
In this way,
.B gccmakedep
can be made to safely ignore esoteric compiler arguments that might
normally be found in a CFLAGS
.B make
macro (see the
.B EXAMPLE
section above).
.BR \-D ,
.BR \-I ,
and
.B \-U
options appearing between the pair of double hyphens are still processed
normally.
.SH "SEE ALSO"
.BR gcc (1),
.BR make (1),
.BR makedepend (1).
.SH AUTHOR
The version of the
.B gccmakedep
included in this X.Org Foundation release was originally
written by the XFree86 Project based on code supplied by Hongjiu Lu.
.PP
Colin Watson wrote this manual page, originally for the Debian Project,
based partly on the manual page for
.BR makedepend (1).

527
gccmakedep/install-sh Executable file
View File

@ -0,0 +1,527 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2011-11-20.07; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# 'make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch.
nl='
'
IFS=" "" $nl"
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit=${DOITPROG-}
if test -z "$doit"; then
doit_exec=exec
else
doit_exec=$doit
fi
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
chgrpprog=${CHGRPPROG-chgrp}
chmodprog=${CHMODPROG-chmod}
chownprog=${CHOWNPROG-chown}
cmpprog=${CMPPROG-cmp}
cpprog=${CPPROG-cp}
mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
posix_glob='?'
initialize_posix_glob='
test "$posix_glob" != "?" || {
if (set -f) 2>/dev/null; then
posix_glob=
else
posix_glob=:
fi
}
'
posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
mvcmd=$mvprog
rmcmd="$rmprog -f"
stripcmd=
src=
dst=
dir_arg=
dst_arg=
copy_on_change=false
no_target_directory=
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--help display this help and exit.
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
"
while test $# -ne 0; do
case $1 in
-c) ;;
-C) copy_on_change=true;;
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
case $mode in
*' '* | *' '* | *'
'* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2
exit 1;;
esac
shift;;
-o) chowncmd="$chownprog $2"
shift;;
-s) stripcmd=$stripprog;;
-t) dst_arg=$2
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
shift;;
-T) no_target_directory=true;;
--version) echo "$0 $scriptversion"; exit $?;;
--) shift
break;;
-*) echo "$0: invalid option: $1" >&2
exit 1;;
*) break;;
esac
shift
done
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dst_arg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dst_arg"
shift # fnord
fi
shift # arg
dst_arg=$arg
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
done
fi
if test $# -eq 0; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
trap "ret=141; $do_exit" 13
trap "ret=143; $do_exit" 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
case $mode in
# Optimize common cases.
*644) cp_umask=133;;
*755) cp_umask=22;;
*[0-7])
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
fi
for src
do
# Protect names problematic for 'test' and other utilities.
case $src in
-* | [=\(\)!]) src=./$src;;
esac
if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dst_arg
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test -n "$no_target_directory"; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
# Prefer dirname, but fall back on a substitute if dirname fails.
dstdir=`
(dirname "$dst") 2>/dev/null ||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$dst" : 'X\(//\)[^/]' \| \
X"$dst" : 'X\(//\)$' \| \
X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
echo X"$dst" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'
`
test -d "$dstdir"
dstdir_status=$?
fi
fi
obsolete_mkdir_used=false
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
*[0-7])
mkdir_umask=`expr $umask + 22 \
- $umask % 100 % 40 + $umask % 20 \
- $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
else
mkdir_mode=
fi
posix_mkdir=false
case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
if (umask $mkdir_umask &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/d" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
fi
trap '' 0;;
esac;;
esac
if
$posix_mkdir && (
umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
# The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
[-=\(\)!]*) prefix='./';;
*) prefix='';;
esac
eval "$initialize_posix_glob"
oIFS=$IFS
IFS=/
$posix_glob set -f
set fnord $dstdir
shift
$posix_glob set +f
IFS=$oIFS
prefixes=
for d
do
test X"$d" = X && continue
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
else
case $prefix in
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
*) qprefix=$prefix;;
esac
prefixes="$prefixes '$qprefix'"
fi
fi
prefix=$prefix/
done
if test -n "$prefixes"; then
# Don't fail if two instances are running concurrently.
(umask $mkdir_umask &&
eval "\$doit_exec \$mkdirprog $prefixes") ||
test -d "$dstdir" || exit 1
obsolete_mkdir_used=true
fi
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
eval "$initialize_posix_glob" &&
$posix_glob set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
$posix_glob set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
trap '' 0
fi
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

215
gccmakedep/missing Executable file
View File

@ -0,0 +1,215 @@
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
scriptversion=2013-10-28.13; # UTC
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# 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, 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, see <http://www.gnu.org/licenses/>.
# 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.
if test $# -eq 0; then
echo 1>&2 "Try '$0 --help' for more information"
exit 1
fi
case $1 in
--is-lightweight)
# Used by our autoconf macros to check whether the available missing
# script is modern enough.
exit 0
;;
--run)
# Back-compat with the calling convention used by older automake.
shift
;;
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
to PROGRAM being missing or too old.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
Supported PROGRAM values:
aclocal autoconf autoheader autom4te automake makeinfo
bison yacc flex lex help2man
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
'g' are ignored when checking the name.
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)"
exit $?
;;
-*)
echo 1>&2 "$0: unknown '$1' option"
echo 1>&2 "Try '$0 --help' for more information"
exit 1
;;
esac
# Run the given program, remember its exit status.
"$@"; st=$?
# If it succeeded, we are done.
test $st -eq 0 && exit 0
# Also exit now if we it failed (or wasn't found), and '--version' was
# passed; such an option is passed most likely to detect whether the
# program is present and works.
case $2 in --version|--help) exit $st;; esac
# Exit code 63 means version mismatch. This often happens when the user
# tries to use an ancient version of a tool on a file that requires a
# minimum version.
if test $st -eq 63; then
msg="probably too old"
elif test $st -eq 127; then
# Program was missing.
msg="missing on your system"
else
# Program was found and executed, but failed. Give up.
exit $st
fi
perl_URL=http://www.perl.org/
flex_URL=http://flex.sourceforge.net/
gnu_software_URL=http://www.gnu.org/software
program_details ()
{
case $1 in
aclocal|automake)
echo "The '$1' program is part of the GNU Automake package:"
echo "<$gnu_software_URL/automake>"
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/autoconf>"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
autoconf|autom4te|autoheader)
echo "The '$1' program is part of the GNU Autoconf package:"
echo "<$gnu_software_URL/autoconf/>"
echo "It also requires GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
esac
}
give_advice ()
{
# Normalize program name to check for.
normalized_program=`echo "$1" | sed '
s/^gnu-//; t
s/^gnu//; t
s/^g//; t'`
printf '%s\n' "'$1' is $msg."
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
case $normalized_program in
autoconf*)
echo "You should only need it if you modified 'configure.ac',"
echo "or m4 files included by it."
program_details 'autoconf'
;;
autoheader*)
echo "You should only need it if you modified 'acconfig.h' or"
echo "$configure_deps."
program_details 'autoheader'
;;
automake*)
echo "You should only need it if you modified 'Makefile.am' or"
echo "$configure_deps."
program_details 'automake'
;;
aclocal*)
echo "You should only need it if you modified 'acinclude.m4' or"
echo "$configure_deps."
program_details 'aclocal'
;;
autom4te*)
echo "You might have modified some maintainer files that require"
echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
echo "You should only need it if you modified a '.y' file."
echo "You may want to install the GNU Bison package:"
echo "<$gnu_software_URL/bison/>"
;;
lex*|flex*)
echo "You should only need it if you modified a '.l' file."
echo "You may want to install the Fast Lexical Analyzer package:"
echo "<$flex_URL>"
;;
help2man*)
echo "You should only need it if you modified a dependency" \
"of a man page."
echo "You may want to install the GNU Help2man package:"
echo "<$gnu_software_URL/help2man/>"
;;
makeinfo*)
echo "You should only need it if you modified a '.texi' file, or"
echo "any other file indirectly affecting the aspect of the manual."
echo "You might want to install the Texinfo package:"
echo "<$gnu_software_URL/texinfo/>"
echo "The spurious makeinfo call might also be the consequence of"
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
echo "want to install GNU make:"
echo "<$gnu_software_URL/make/>"
;;
*)
echo "You might have modified some files without having the proper"
echo "tools for further handling them. Check the 'README' file, it"
echo "often tells you about the needed prerequisites for installing"
echo "this package. You may also peek at any GNU archive site, in"
echo "case some other package contains this missing '$1' program."
;;
esac
}
give_advice "$1" | sed -e '1s/^/WARNING: /' \
-e '2,$s/^/ /' >&2
# Propagate the correct exit status (expected to be 127 for a program
# not found, 63 for a program that failed due to version mismatch).
exit $st
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

48
imake/COPYING Normal file
View File

@ -0,0 +1,48 @@
Copyright (c) 1985, 1986, 1987, 1989, 1993, 1994, 1996, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall
not be used in advertising or otherwise to promote the sale, use or
other dealings in this Software without prior written authorization
from The Open Group.
Copyright © 1999, 2000, 2003 by The XFree86 Project, Inc. All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Except as contained in this notice, the name of the XFree86 Project shall
not be used in advertising or otherwise to promote the sale, use or other
dealings in this Software without prior written authorization from the
XFree86 Project.

841
imake/ChangeLog Normal file
View File

@ -0,0 +1,841 @@
commit 5d1d5150e5863f019e407d572556a8a08e834c1e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Mar 16 16:25:02 2019 -0700
imake 1.0.8
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 5366d1c2e0865b84e009127e75a5bd9a2d278fe3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Dec 7 20:28:00 2018 -0800
Update configure.ac bug URL for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit ed90f727ce513717b5d4809ecbc1909a7281dd3d
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Dec 7 20:27:55 2018 -0800
Update README for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 67ec423f8f617ddd09f304b1966114049c81833e
Author: Andrew Savchenko <bircoph@gmail.com>
Date: Fri Feb 16 17:31:16 2018 +0000
imake support for lcc compiler
https://bugs.freedesktop.org/show_bug.cgi?id=105136
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 373a53cdcb59c53599cc95f2dccf8cd42e748443
Author: Mihail Konev <k.mvc@ya.ru>
Date: Thu Jan 26 14:00:22 2017 +1000
autogen: add default patch prefix
Signed-off-by: Mihail Konev <k.mvc@ya.ru>
commit 94430c9cffc4ba5780f76c8130878f23d499811e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Dec 11 17:02:10 2015 -0800
README: reword status section
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit b1e8e29448467d875b2efe5c83043ec2770e18d6
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Nov 8 09:41:42 2014 -0800
Use SEEK_* names instead of raw numbers for fseek whence argument
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 6d42b63eb7c9c7da89d431db6f28aff1928bb22a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Jun 4 18:14:59 2014 -0700
autogen.sh: Honor NOCONFIGURE=1
See http://people.gnome.org/~walters/docs/build-api.txt
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 5e32ede6f904e024f3956484aceb4a4be37d423f
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Jun 4 18:14:59 2014 -0700
configure: Drop AM_MAINTAINER_MODE
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4063190bf2fd7e3c61b80e98d72e134609612bf8
Author: Julien Cristau <jcristau@debian.org>
Date: Wed May 21 20:51:03 2014 +0200
Bump to 1.0.7
Signed-off-by: Julien Cristau <jcristau@debian.org>
commit 16e54de5d8c58a1d051a5f4bcb7357aa9f9facff
Author: Greg Turner <gmt@be-evil.net>
Date: Mon Mar 24 20:37:15 2014 +0100
Pass files to cpp via CLI arg instead of stdin to workaround gcc 4.8 change
Replicates Alan Coopersmith's fix for xinit.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=74031
Signed-off-by: Julien Cristau <jcristau@debian.org>
commit f231ed52c4adeb071de0553af7a575687a6d3dc5
Author: Julien Cristau <jcristau@debian.org>
Date: Sat Aug 17 12:12:08 2013 +0200
Replace fprintf with fputs
Fix build failure with -Werror=format-security:
imake.c:1008:5: error: format not a string literal and no format arguments [-Werror=format-security]
fprintf (inFile, command);
^
Signed-off-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 89494a51d006c20d16d3f08225a0345fecaae546
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Mon Jul 22 21:52:56 2013 -0700
imake 1.0.6
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit bb9cbad3cfaee60bf88ef50b5a165ed9321d4548
Author: Eric S. Raymond <esr@thyrsus.com>
Date: Thu Jun 6 16:11:33 2013 -0400
Avoid use of low-level troff markup that can't be lifted structurally.
commit 4db5afc933064ab165cd081c0d5a83bef87b770e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jan 19 09:15:52 2013 -0800
config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS
Regroup AC statements under the Autoconf initialization section.
Regroup AM statements under the Automake initialization section.
Add missing AC_CONFIG_SRCDIR
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 6cb46d6d9c7ce6fbf32381edec5bfa993f8bdda9
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Jan 4 19:59:14 2013 -0800
unifdef -U__UNIXOS2__
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 1675120e31e1e54f184da2c0cce9d6f6ddb0c892
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Thu Dec 27 17:00:43 2012 -0800
Let configure pick cpp path on Solaris, instead of hardcoding in imakemdep.h
Simply removing the definition lets the path found by configure be used,
seems to be the simplest way to handle the move from /usr/ccs/lib/cpp on
Solaris 10 and older to /usr/lib/cpp on Solaris 11 & later.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 5a9246d6804ab8a6f2f23f3f4ace84a415140937
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Aug 25 11:19:39 2012 -0700
Ensure inFile is always closed on error in cppit()
Another instance of the can-return-in-rare-cases nature of LogFatal()
raising red flags in static analysis.
Resolves warning from Parfait 1.0.1:
Error: File Leak
File Leak: Leaked File inFile
at line 1719 of imake.c in function 'cppit'.
inFile initialized at line 1699 with fopen
inFile leaks when inFile != NULL at line 1700
and fprintf(inFile, "%s\n", "/* imake - temporary file */") < 0 at line 1702.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 464ba911c3b84abb0140e9f66756d1cc887f78ad
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Aug 25 11:10:46 2012 -0700
Avoid closing inFile twice in CheckImakefileC if LogFatal returns
Imake's LogFatal() checks if it's being re-entered and if so, returns,
so we can't mark it NORETURN, leading to static analyzers believing it
can return even in call paths it shouldn't.
Resolves warning from Parfait 1.0.1:
Error: File Invalid
File not Initialized: The value inFile is not initialized as a file.
at line 748 of imake.c in function 'CheckImakefileC'.
inFile initialized at line 738 with fopen(masterc, "r").
inFile destroyed at line 745 with fclose(inFile).
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 061960e38cb0d6873bda2550f6a8952668193888
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Mar 7 21:47:27 2012 -0800
imake 1.0.5
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 575c3788c8b770a2c32c9d8461bc7422e3b89676
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Feb 10 18:05:36 2012 -0800
xmkmf.man: Remove instructions for "X Consortium" monolithic build tree
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit d33b96db427a2305bd230360c9653a91dbff79e0
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 18:55:13 2011 -0700
Fix a bunch of "too many arguments for format" warnings
Now that the log functions take variable arguments, don't need to pass
empty strings when there is no argument for the format string.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4e3e7fec072591389b4f7b89475ea81e6a4e0ee5
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 18:50:48 2011 -0700
Convert error logging functions to normal idioms
Allows use of printf attributes for checking format strings/arguments,
gets rid of LogFatalI wrapper just used for casting int to char *.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 5aed95badf1bab68b848234fdd25da1ea7025264
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 18:36:53 2011 -0700
Rework temp filename pointers into const & non-const parts
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit bfdbd65cf45eae6ba3565348cec1eeb09927cf5e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 18:31:52 2011 -0700
Add const attributes to fix gcc -Wwrite-strings warnings
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 7f299010c9327ab1a65a6b781c58b4c3098d13b7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 18:11:43 2011 -0700
Strip trailing whitespace
Performed with: find * -type f | xargs perl -i -p -e 's{[ \t]+$}{}'
git diff -w & git diff -b show no diffs from this change
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 99bb38c528f87a2692253ede9f54c4320c6f0986
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Jan 7 20:21:30 2011 -0800
Remove unused variable in get_sun_compiler_versions
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit d2e1f5ca4614afbc1ca30581fcb1f6e50423fc06
Author: Adam Jackson <ajax@nwnk.net>
Date: Mon Nov 1 14:29:33 2010 +1000
Silence useless pedantry warning from find(1) when running cleanlinks.
"find: warning: you have specified the -depth option after a non-option
argument -type, but options are not positional (-depth affects tests
specified before it as well as those specified after it). Please specify
options before other arguments."
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Matthieu Herrb <matthieu.herrb@laas.fr>
commit bf237073d39629599cb77bf0144f862c175bb640
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Oct 30 19:10:35 2010 -0700
imake 1.0.4
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 29c3c8f2fc3859b1c8e1dd1f2327ab51c40fca21
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Sat Oct 30 19:08:31 2010 -0700
config: update AC_PREREQ statement to 2.60
Unrelated to the previous patches, the new value simply reflects
the reality that the minimum level for autoconf to configure
all x.org modules is 2.60 dated June 2006.
ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 3a3c6e584a1fee04a6bc4c11581c283d5fa8c603
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Oct 30 19:04:22 2010 -0700
Use autoconf standard HAVE_MKSTEMP instead of HAS_MKSTEMP
We no longer need to maintain compatibility with the monolith
Imakefile -D flags in the sources.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit f6587b17a6aef0404853ad5113158fddf4a90219
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Oct 30 18:59:39 2010 -0700
config: Remove unnecessary calls from configure.ac
AC_PROG_CC, AC_PROG_SED, & AC_PROG_INSTALL are provided by
XORG_DEFAULT_OPTIONS now
PKG_CONFIG_MODULES handles AC_SUBST of the CFLAGS & LIBS variables
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit bdf937d11774595eefc2ded78dcdf52dfe420443
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Oct 30 18:57:15 2010 -0700
config: upgrade to util-macros 1.8 for additional man page support
Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
The value of MAN_SUBST is the same for all X.Org packages.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit ca3374aee64c71c810159839c9b54c84b2bced24
Author: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Date: Tue Apr 27 20:18:10 2010 -0500
Nuke RCS tags
Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 01a05f973d52edc461c1100a939a70ea0ce9b048
Author: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Date: Tue Apr 27 20:38:15 2010 -0500
mkdirhier: use mkdir -p
The '-p' option to mkdir(1) is required by SUSv2/Unix98, so we should be
able to rely on it on all systems we support. Some parts need to be
left in place in order to not alter some of its ancient, shall we say,
quirks.
Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 098bf61eb89c3d93d2ed814d3e39e6412f6fcf9e
Author: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Date: Tue Apr 27 19:18:27 2010 -0500
Use standard .gitignore with custom section for imake
Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Gaetan Nadon <gaetan.nadon@videotron.ca>
commit 04da52fb5c4721c0218dbe6537c9ad0f7bd2ab04
Author: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Date: Tue Apr 27 19:14:35 2010 -0500
Use AC_PROG_SED to find sed
AC_PROG_SED sets SED as the path to a fully-functional 'sed' (which may
also be called 'gsed' if GNU sed is installed alongside a proprietary
version).
Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 1127a5cb3166f4d5d0564732b3842fe81bf3e701
Author: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Date: Tue Apr 27 19:06:32 2010 -0500
Allow for EXEEXT in appman_DATA rule
As a result of commit 22578c3718e41da72c66ce6a4186ec7315d6e3ad:
make[1]: *** No rule to make target `imake.exe.1', needed by `all-am'.
make[1]: *** No rule to make target `revpath.exe.1', needed by `all-am'.
On PE/COFF platforms EXEEXT is set to ".exe" and is appended by automake
to all *_PROGRAMS. For portability this must be accounted for in any
custom rules which refer to any *_PROGRAMS.
Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 48145e04d24b1c575a22bac69c3c3033f72322fc
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Thu Apr 15 19:52:20 2010 -0700
imake 1.0.3
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 6a71b39eb5a425aeee13f0e62d225dd0c6bf4e05
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Thu Apr 15 19:38:50 2010 -0700
Fill in COPYING file with notices from code & man pages
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 8d8c90973f5862e8d324a4e1cd94896a43d0c27e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Thu Apr 15 19:22:57 2010 -0700
Use $(AM_V_GEN) to silence commands for generating scripts & man pages
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit a00cc6e7bd60eb81aeee4fa7dcbb3a07b352760d
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Thu Apr 15 19:20:36 2010 -0700
Migrate to xorg-macros 1.4, with XORG_DEFAULT_OPTIONS & INSTALL
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4e25c6af47bfac6e2b6910f5d415d788cf3398c4
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Wed Jul 8 10:25:14 2009 -0400
imake: use XORG_CHANGELOG macro to create ChangeLog. #22611
Build break: Makefile.am: command not found: git-log
Adding the macro in configure.ac and use it in Makefile.am
Refer to: https://bugs.freedesktop.org/show_bug.cgi?id=22611
Tested: running autogen.sh, make and 'make dist'
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 2e164f61a461a21a74f2050f8da886373307cc5a
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Wed Jun 24 13:49:13 2009 -0700
Make cpp statement indenting more consistent
Auto-fixed with imdent from Paul Dubois (of imake book infamy)
Also stripped trailing whitespace to make git happier
git diff -w shows no changes in this patch other than whitespace
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 29e3bccdb5dbc5ea45d58bd3d454a4b8cda36398
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Wed Jun 24 13:45:09 2009 -0700
Drop some ancient SunOS 4 & A/UX support bits
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 209bab8478a5a205d715a5f2f50cd32c4b69581e
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Wed Jun 24 13:43:15 2009 -0700
Drop some unused #if 0 & #ifdef MONOLITH sections
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 5667fbb0f85f2b34aaba7ea702e7d252f2d4adb6
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Mon Jun 22 18:59:09 2009 -0700
Convert HAS_MKSTEMP check from #if ...OS list... to autoconf
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 22578c3718e41da72c66ce6a4186ec7315d6e3ad
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Mon Jun 22 18:26:21 2009 -0700
Only install man pages for programs/scripts being installed
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 705178e8f8414730739386f8841cd99f49184d56
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Mon Jun 22 18:18:50 2009 -0700
Add .gitignore
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 8f0d3c8cb5e74faffbb546b0a0b47a883859fd24
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Mon Jun 22 18:15:26 2009 -0700
Doc updates: reflect current state, pointers to Paul Dubois website/book
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit eb8e41c3b3f280c34947579a5ee9fa511aee9acf
Merge: e215b32 9653950
Author: Jeremy C. Reed <reed@tx.reedmedia.net>
Date: Thu Feb 14 23:27:42 2008 -0600
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/util/imake
commit e215b32a5b46a0c49be1baa4595f258f275c3fb0
Author: Jeremy C. Reed <reed@tx.reedmedia.net>
Date: Thu Feb 14 22:41:51 2008 -0600
Stop core dump.
Don't abort() if pclose(). Because pipe may have already closed.
This is in get_stackprotector (only on OpenBSD and DragonFly).
commit 96539504eec3e6e1e43a6f894770835765b0007d
Author: Jeremy C. Reed <reed@tx.reedmedia.net>
Date: Thu Feb 14 22:41:51 2008 -0600
Stop core dump.
Don't abort() if pclose(). Because pipe may have already closed.
This is in get_stackprotector (only on OpenBSD and DragonFly).
I doubt this function even worked, because gcc -v goes to stderr so
it reads nothing.
commit 7e541aa0efe7000972d992a3c1569c4f7a8d9201
Author: James Cloos <cloos@jhcloos.com>
Date: Thu Dec 6 16:39:16 2007 -0500
Replace static ChangeLog with dist-hook to generate from git log
commit e10ad52b0a0d4fc63120e6b301d21f0829beef77
Author: Adam Jackson <ajax@nwnk.net>
Date: Fri May 19 18:44:42 2006 +0000
Bump to 1.0.2
commit ef2ef80f564098fe244c5a2065930b8502879043
Author: Donnie Berkholz <spyderous@gentoo.org>
Date: Sat Apr 8 21:43:31 2006 +0000
Allow specifying TMPDIR environment variable to use instead of /tmp, for
systems on which /tmp is mounted noexec (Martin Schlemmer).
commit b8d8f49ba2660d4d84ca9c3e4a82118a07c4e889
Author: Kevin E Martin <kem@kem.org>
Date: Wed Dec 21 02:30:08 2005 +0000
Update package version for X11R7 release.
commit 7dd15a5adbad23deba0a7c2b5bb39a7bb39e70d6
Author: Adam Jackson <ajax@nwnk.net>
Date: Mon Dec 19 16:36:01 2005 +0000
Stub COPYING files
commit bad47fc3927b766cde5af54c6c9786f2dac5345c
Author: Kevin E Martin <kem@kem.org>
Date: Thu Dec 15 00:24:40 2005 +0000
Update package version number for final X11R7 release candidate.
commit 4c12f30420340a4a4f0f6f0d21d20da988982820
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Sun Dec 11 17:18:40 2005 +0000
Fix mkhtmlindex rules to not use $< so they work with non-GNU makes.
commit b87a680569dd388ad108d43087aee6c8a50ff663
Author: Kevin E Martin <kem@kem.org>
Date: Sat Dec 10 16:30:35 2005 +0000
Add support for building imake config utilities.
commit 15cb7c3dfb5b7d4a9e5d84514c8c5140ff6050c8
Author: Kevin E Martin <kem@kem.org>
Date: Tue Dec 6 22:48:46 2005 +0000
Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
commit bab6d99929b6dfa339993093ea7dacffc98c5acd
Author: Kevin E Martin <kem@kem.org>
Date: Sat Dec 3 05:49:47 2005 +0000
Update package version number for X11R7 RC3 release.
commit a7790a9fc6e70f5dcefbe58219b5192857c88c45
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Mon Nov 28 22:00:24 2005 +0000
Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
commit c9db5d7eb65a59b7e4bae091acb8194bd01de284
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Thu Nov 24 18:06:39 2005 +0000
Add makeg script & man page to imake package
commit d6313cf27320281f24d6f852fc7f8d0bb8aacd6b
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Sat Nov 12 19:55:28 2005 +0000
Substitute variables in man pages Set CPP_PROGRAM to path to cpp
commit cd8ef36c4862f710621c35a4732ca3d0e49e8d5e
Author: Kevin E Martin <kem@kem.org>
Date: Wed Nov 9 21:25:57 2005 +0000
Update package version number for X11R7 RC2 release.
commit e53156a68f0138a8b0af408436fd54826b677cc6
Author: Kean Johnson <kean@armory.com>
Date: Tue Nov 8 06:33:24 2005 +0000
See ChangeLog entry 2005-11-07 for details.
commit 009b63897b8d2bc4fd27ff04bc3884317cf0b17d
Author: Kevin E Martin <kem@kem.org>
Date: Wed Oct 19 02:48:16 2005 +0000
Update package version number for RC1 release.
commit 19f4715eb18c20d357f03ca6b245bec5e58833e5
Author: Kevin E Martin <kem@kem.org>
Date: Sat Oct 8 20:46:40 2005 +0000
Updates for modular build
commit f4937241d85b026f0beca69eba8ce448143e3f0f
Author: Kevin E Martin <kem@kem.org>
Date: Sat Oct 8 20:38:57 2005 +0000
Build system for imake
commit 5acc1119e447c0855f649b9d8ae8ddb9cf8373b7
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Mon Oct 3 16:17:10 2005 +0000
Bug #3812 <https://bugs.freedesktop.org/show_bug.cgi?id=3812> Patch #3462
<https://bugs.freedesktop.org/attachment.cgi?id=3462> GNU/kFreeBSD
Imake support (Robert Millan)
commit ea133dd95dbd63d5db79af1f364e9678331989e2
Author: Daniel Stone <daniel@fooishbar.org>
Date: Fri Aug 26 05:01:37 2005 +0000
Make makedepend excruciatingly safe (Debian #011).
commit 5f90561e8ddcccec3d35355c7b4ad5925031f5d5
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Mon Aug 1 02:13:55 2005 +0000
Pass through __BUILTIN_VA_STRUCT and __BUILTIN_VA_ARG_INCR defines in
makedepend so it doesn't issue errors when source files include
<varargs.h> or <stdarg.h> on Solaris 10.
commit 65ea7b4cc68153673dcdce016acd6ee6acc4aec3
Author: Roland Mainz <roland.mainz@nrubsig.org>
Date: Wed Mar 2 11:20:29 2005 +0000
xc/config/cf/DragonFly.cf
xc/config/cf/Imake.cf
xc/config/cf/Imakefile
xc/config/imake/imake.c
xc/config/imake/imakemdep.h
xc/extras/drm/shared/drm.h
xc/include/Xos_r.h
xc/lib/xtrans/Xtranssock.c
xc/programs/Xserver/hw/xfree86/os-support/xf86_OSlib.h
xc/programs/Xserver/hw/xfree86/os-support/xf86_libc.h
xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c
//bugs.freedesktop.org/show_bug.cgi?id=1712) attachment #2004
(https://bugs.freedesktop.org/attachment.cgi?id=2004): Add support for
DragonFly/BSD platform. Patch by Jeroen Ruigrok <asmodai@tendra.org>
and Mike Verona <firedragonfly@gmail.com>.
commit ecdad73b62bb3222d02667d2add16d7417a5da9b
Author: Alexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de>
Date: Thu Feb 24 15:31:09 2005 +0000
enable detection of gcc compiler for cygwin and mingw
commit af6a6a1c8a30b88b2eb80aa47f58fd8ae26d9677
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Wed Jan 19 22:28:20 2005 +0000
Pass through additional #defines for Solaris. (Sun bug id #5097074 - Alan
Coopersmith)
commit 19e94341580c4c108c8d1615ae4542e2ee27431a
Author: Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>
Date: Sat Dec 4 00:42:46 2004 +0000
Encoding of numerous files changed to UTF-8
commit eb6967199448890591bec799d70c45827bc188eb
Author: Alexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de>
Date: Mon Nov 15 15:06:52 2004 +0000
Bufzilla #1802, http://freedesktop.org/bugzilla/show_bug.cgi?id=1802 Added
mingw (Win32) port
commit 36fbf892d1c2740afa51911b6f2c2e4bf8f871c0
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Sat Oct 30 20:33:43 2004 +0000
Add -d flag for compilers like the Sun C compilers that produce dependency
lists themselves. To use with the Sun compilers, add to host.def: #
define UseCCMakeDepend YES # define DependFlags -cc $(CC) -d -xM (Sun
bug id #4245688 - fix by Alan Coopersmith)
Add Solaris to the platforms on which mprotect is run to set execute
permissions when necessary. (Sun bug id #6175128 - fix by Alan
Coopersmith)
Internationalize digital output (Sun bug id #4119396 - fix by Steve
Swales), add -bgpixmap option to set XPM file as background (originally
from STSF project version of xclock by Alan Coopersmith)
xc/programs/xmodmap/handle.c,pf.c xmodmap was printing line numbers which
are one too low in error messages (Xorg bugzilla #1739, Sun bug id
4637857 - fix by Sam Lau)
commit 02fa88c73e7df616e1c620996d613b56a119ea4d
Author: Egbert Eich <eich@suse.de>
Date: Tue Oct 19 13:50:06 2004 +0000
Enabling modules and DRI for Linux HPPA.
Removing hpsocket.c as it isn't used anywhere any more (Bugzilla #1584).
commit 8be49ad988e8072389042bb9240b074b89a828ad
Author: Egbert Eich <eich@suse.de>
Date: Mon Oct 18 14:26:35 2004 +0000
powerpc/powerpc64 build fixes.
commit 53f7aa94ebd7864b411320efe8a615580fad7085
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date: Sat Oct 9 22:04:13 2004 +0000
Fix ProPolice support for OpenBSD (merge with the HasGccStackProtector
define that was used on OpenBSD).
remove -ansi from DefaultCCOptions on OpenBSD.
commit a60680db574e2e6c910352c4093c06dc562741ef
Author: Kevin E Martin <kem@kem.org>
Date: Wed Aug 11 21:14:02 2004 +0000
Apply PPC64 build patch (Bug #303, Mike A. Harris, Alan Coopersmith).
commit e3174f16ac5aabc0da0c22c79b138103eaba0c28
Author: Eric Anholt <anholt@freebsd.org>
Date: Fri Jun 11 17:59:30 2004 +0000
Allow overriding of os version with OSREL env var on FreeBSD. Used in the
ports cluster and cross-version testing.
commit 73f12a29fbfdac7f1cb7956f32564e253e313527
Author: Egbert Eich <eich@suse.de>
Date: Thu May 6 17:31:17 2004 +0000
BugZilla #601: Fixing makedepend choking on floating point exception
because CHAR_BIT is defined to __CHAR_BIT__ which is a compiler
intrinsic define. BugZilla #605: Fixing build on IA64 which is broken
due to the inclusion of the kernel header asm/page.h. Kernel headers
however don't work with
-ansi. The inclusion of asm/page.h can however savely be removed as it
there are plenty of other ways to determine the page size.
commit e825f4eabd82155a1327c42f16a6e3bcba96b311
Author: Egbert Eich <eich@suse.de>
Date: Fri Apr 23 18:42:00 2004 +0000
Merging XORG-CURRENT into trunk
commit fa8f86352aab5825ca289969cfd11d90e56eb579
Author: Egbert Eich <eich@suse.de>
Date: Sun Mar 14 08:27:28 2004 +0000
Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
commit 6c30fa731ba63151d792f278bf0b4dc3d2010d43
Author: Egbert Eich <eich@suse.de>
Date: Wed Mar 3 12:09:38 2004 +0000
Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
commit aa4808e4d4245d9ef0e6dae09670295da49972d0
Author: Egbert Eich <eich@suse.de>
Date: Thu Feb 26 13:34:16 2004 +0000
readding XFree86's cvs IDs
commit cb1cabdedcd488a729923ef6677b5e7b13cb3d5a
Author: Egbert Eich <eich@suse.de>
Date: Thu Feb 26 09:21:15 2004 +0000
Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
commit b1abaa61cb80aa0c282dbb15c8d834c36c2c9443
Author: Egbert Eich <eich@suse.de>
Date: Thu Jan 29 08:06:33 2004 +0000
Importing vendor version xf86-012804-2330 on Thu Jan 29 00:06:33 PST 2004
commit 91f4b859c20d25898da3324921758c2d35523fd5
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Tue Nov 25 19:26:56 2003 +0000
XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
commit e5ab5c93d3178aa82b66e2c086b54e042930725e
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 16:48:20 2003 +0000
XFree86 4.3.0.1
commit 1bc16368b0ff5701fa740aba943ac47a4f99b258
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 16:48:20 2003 +0000
Initial revision
commit 86fae01174ab672736557a4bb1b2188cf3cec064
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 15:54:29 2003 +0000
R6.6 is the Xorg base-line

370
imake/INSTALL Normal file
View File

@ -0,0 +1,370 @@
Installation Instructions
*************************
Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. This file is offered as-is,
without warranty of any kind.
Basic Installation
==================
Briefly, the shell commands `./configure; make; make install' should
configure, build, and install this package. The following
more-detailed instructions are generic; see the `README' file for
instructions specific to this package. Some packages provide this
`INSTALL' file but do not implement all of the features documented
below. The lack of an optional feature in a given package is not
necessarily a bug. More recommendations for GNU packages can be found
in *note Makefile Conventions: (standards)Makefile Conventions.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
those values to create a `Makefile' in each directory of the package.
It may also create one or more `.h' files containing system-dependent
definitions. Finally, it creates a shell script `config.status' that
you can run in the future to recreate the current configuration, and a
file `config.log' containing compiler output (useful mainly for
debugging `configure').
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
the results of its tests to speed up reconfiguring. Caching is
disabled by default to prevent problems with accidental use of stale
cache files.
If you need to do unusual things to compile the package, please try
to figure out how `configure' could check whether to do them, and mail
diffs or instructions to the address given in the `README' so they can
be considered for the next release. If you are using the cache, and at
some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file `configure.ac' (or `configure.in') is used to create
`configure' by a program called `autoconf'. You need `configure.ac' if
you want to change it or regenerate `configure' using a newer version
of `autoconf'.
The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system.
Running `configure' might take a while. While running, it prints
some messages telling which features it is checking for.
2. Type `make' to compile the package.
3. Optionally, type `make check' to run any self-tests that come with
the package, generally using the just-built uninstalled binaries.
4. Type `make install' to install the programs and any data files and
documentation. When installing into a prefix owned by root, it is
recommended that the package be configured and built as a regular
user, and only the `make install' phase executed with root
privileges.
5. Optionally, type `make installcheck' to repeat any self-tests, but
this time using the binaries in their final installed location.
This target does not install anything. Running this target as a
regular user, particularly if the prior `make install' required
root privileges, verifies that the installation completed
correctly.
6. You can remove the program binaries and object files from the
source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is
also a `make maintainer-clean' target, but that is intended mainly
for the package's developers. If you use it, you may have to get
all sorts of other programs in order to regenerate files that came
with the distribution.
7. Often, you can also type `make uninstall' to remove the installed
files again. In practice, not all packages have tested that
uninstallation works correctly, even though it is required by the
GNU Coding Standards.
8. Some packages, particularly those that use Automake, provide `make
distcheck', which can by used by developers to test that all other
targets like `make install' and `make uninstall' work correctly.
This target is generally not run by end users.
Compilers and Options
=====================
Some systems require unusual options for compilation or linking that
the `configure' script does not know about. Run `./configure --help'
for details on some of the pertinent environment variables.
You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here
is an example:
./configure CC=c99 CFLAGS=-g LIBS=-lposix
*Note Defining Variables::, for more details.
Compiling For Multiple Architectures
====================================
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'. This
is known as a "VPATH" build.
With a non-GNU `make', it is safer to compile the package for one
architecture at a time in the source code directory. After you have
installed the package for one architecture, use `make distclean' before
reconfiguring for another architecture.
On MacOS X 10.5 and later systems, you can create libraries and
executables that work on multiple system types--known as "fat" or
"universal" binaries--by specifying multiple `-arch' options to the
compiler but only a single `-arch' option to the preprocessor. Like
this:
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CPP="gcc -E" CXXCPP="g++ -E"
This is not guaranteed to produce working output in all cases, you
may have to build one architecture at a time and combine the results
using the `lipo' tool if you have problems.
Installation Names
==================
By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving
`configure' the option `--prefix=PREFIX', where PREFIX must be an
absolute file name.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
pass the option `--exec-prefix=PREFIX' to `configure', the package uses
PREFIX as the prefix for installing programs and libraries.
Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them. In general, the
default for these options is expressed in terms of `${prefix}', so that
specifying just `--prefix' will affect all of the other directory
specifications that were not explicitly provided.
The most portable way to affect installation locations is to pass the
correct locations to `configure'; however, many packages provide one or
both of the following shortcuts of passing variable assignments to the
`make install' command line to change installation locations without
having to reconfigure or recompile.
The first method involves providing an override variable for each
affected directory. For example, `make install
prefix=/alternate/directory' will choose an alternate location for all
directory configuration variables that were expressed in terms of
`${prefix}'. Any directories that were specified during `configure',
but not in terms of `${prefix}', must each be overridden at install
time for the entire installation to be relocated. The approach of
makefile variable overrides for each directory variable is required by
the GNU Coding Standards, and ideally causes no recompilation.
However, some platforms have known limitations with the semantics of
shared libraries that end up requiring recompilation when using this
method, particularly noticeable in packages that use GNU Libtool.
The second method involves providing the `DESTDIR' variable. For
example, `make install DESTDIR=/alternate/directory' will prepend
`/alternate/directory' before all installation names. The approach of
`DESTDIR' overrides is not required by the GNU Coding Standards, and
does not work on platforms that have drive letters. On the other hand,
it does better at avoiding recompilation issues, and works well even
when some directory options were not specified in terms of `${prefix}'
at `configure' time.
Optional Features
=================
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
`README' should mention any `--enable-' and `--with-' options that the
package recognizes.
For packages that use the X Window System, `configure' can usually
find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
Some packages offer the ability to configure how verbose the
execution of `make' will be. For these packages, running `./configure
--enable-silent-rules' sets the default to minimal output, which can be
overridden with `make V=1'; while running `./configure
--disable-silent-rules' sets the default to verbose, which can be
overridden with `make V=0'.
Particular systems
==================
On HP-UX, the default C compiler is not ANSI C compatible. If GNU
CC is not installed, it is recommended to use the following options in
order to use an ANSI C compiler:
./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
HP-UX `make' updates targets which have the same time stamps as
their prerequisites, which makes it generally unusable when shipped
generated files such as `configure' are involved. Use GNU `make'
instead.
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
a workaround. If GNU CC is not installed, it is therefore recommended
to try
./configure CC="cc"
and if that doesn't work, try
./configure CC="cc -nodtk"
On Solaris, don't put `/usr/ucb' early in your `PATH'. This
directory contains several dysfunctional programs; working variants of
these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
in your `PATH', put it _after_ `/usr/bin'.
On Haiku, software installed for all users goes in `/boot/common',
not `/usr/local'. It is recommended to use the following options:
./configure --prefix=/boot/common
Specifying the System Type
==========================
There may be some features `configure' cannot figure out
automatically, but needs to determine by the type of machine the package
will run on. Usually, assuming the package is built to be run on the
_same_ architectures, `configure' can figure that out, but if it prints
a message saying it cannot guess the machine type, give it the
`--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form:
CPU-COMPANY-SYSTEM
where SYSTEM can have one of these forms:
OS
KERNEL-OS
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
use the option `--target=TYPE' to select the type of system they will
produce code for.
If you want to _use_ a cross compiler, that generates code for a
platform different from the build platform, you should specify the
"host" platform (i.e., that on which the generated programs will
eventually be run) with `--host=TYPE'.
Sharing Defaults
================
If you want to set default values for `configure' scripts to share,
you can create a site shell script called `config.site' that gives
default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script.
Defining Variables
==================
Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script).
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
an Autoconf bug. Until the bug is fixed you can use this workaround:
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
`configure' Invocation
======================
`configure' recognizes the following options to control how it
operates.
`--help'
`-h'
Print a summary of all of the options to `configure', and exit.
`--help=short'
`--help=recursive'
Print a summary of the options unique to this package's
`configure', and exit. The `short' variant lists options used
only in the top level, while the `recursive' variant lists options
also present in any nested packages.
`--version'
`-V'
Print the version of Autoconf used to generate the `configure'
script, and exit.
`--cache-file=FILE'
Enable the cache: use and save the results of the tests in FILE,
traditionally `config.cache'. FILE defaults to `/dev/null' to
disable caching.
`--config-cache'
`-C'
Alias for `--cache-file=config.cache'.
`--quiet'
`--silent'
`-q'
Do not print messages saying which checks are being made. To
suppress all normal output, redirect it to `/dev/null' (any error
messages will still be shown).
`--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
`--prefix=DIR'
Use DIR as the installation prefix. *note Installation Names::
for more details, including other options available for fine-tuning
the installation locations.
`--no-create'
`-n'
Run the configure checks, but stop before creating any output
files.
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.

154
imake/Makefile.am Normal file
View File

@ -0,0 +1,154 @@
#
# Copyright 2005 Red Hat, Inc.
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of Red Hat not be used in
# advertising or publicity pertaining to distribution of the software without
# specific, written prior permission. Red Hat makes no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
# RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
# EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
CPP_PROGRAM = @CPP_PROGRAM@
XCONFDIR = @XCONFDIR@
PREPROCESSCMD_MKDEPEND = @PREPROCESSCMD_MKDEPEND@
ARCMD = @ARCMD@
RANLIB = @RANLIB@
if BUILD_REVPATH
REVPATH = revpath
endif
bin_PROGRAMS = imake $(REVPATH)
AM_CFLAGS = $(CWARNFLAGS)
imake_CFLAGS = $(XPROTO_CFLAGS) -DCPP_PROGRAM='"$(CPP_PROGRAM)"' $(CWARNFLAGS)
imake_SOURCES = imake.c imakemdep.h
revpath_SOURCES = revpath.c
if BUILD_MAKEG
MAKEG = makeg
endif
if BUILD_XMKMF
XMKMF = xmkmf
endif
if BUILD_CCMAKEDEP
CCMAKEDEP = ccmakedep
endif
if BUILD_MERGELIB
MERGELIB = mergelib
endif
if BUILD_MKDIRHIER
MKDIRHIER = mkdirhier
endif
if BUILD_CLEANLINKS
CLEANLINKS = cleanlinks
endif
if BUILD_MKHTMLINDEX
MKHTMLINDEX = mkhtmlindex
endif
bin_SCRIPTS = \
$(MAKEG) \
$(XMKMF) \
$(CCMAKEDEP) \
$(MERGELIB) \
$(MKDIRHIER) \
$(CLEANLINKS) \
$(MKHTMLINDEX)
xmkmf: xmkmf.cpp
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) -DCONFIGDIRSPEC='"-I$(XCONFDIR)"' $(srcdir)/xmkmf.cpp | $(SED) -e /^\#/d | $(SED) -e s/XCOMM/\#/ > $@
ccmakedep: mdepend.cpp
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) -DPREPROC='"$(PREPROCESSCMD_MKDEPEND)"' $(srcdir)/mdepend.cpp | $(SED) -e /^\#/d | $(SED) -e s/XCOMM/\#/ > $@
mergelib: mergelib.cpp
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) -DARCMD="$(ARCMD)" -DRANLIB="$(RANLIB)" $(srcdir)/mergelib.cpp | $(SED) -e /^\#/d | $(SED) -e s/XCOMM/\#/ > $@
if HAS_PERL
MKHTMLINDEX_SCRIPT = $(srcdir)/mkhtmlindex.pl
else
MKHTMLINDEX_SCRIPT = $(srcdir)/mkhtmlindex.sh
endif
mkhtmlindex: $(MKHTMLINDEX_SCRIPT)
$(AM_V_GEN)cp $(MKHTMLINDEX_SCRIPT) $@
CLEANFILES = \
xmkmf \
ccmakedep \
mergelib \
mkhtmlindex
EXTRA_DIST = \
README.md \
makeg \
xmkmf.cpp \
mdepend.cpp \
mergelib.cpp \
mkdirhier \
cleanlinks \
mkhtmlindex.pl \
mkhtmlindex.sh
# Man page
appmandir = $(APP_MAN_DIR)
appman_PRE = \
imake.man \
makeg.man \
xmkmf.man \
ccmakedep.man \
mergelib.man \
revpath.man \
mkdirhier.man \
cleanlinks.man \
mkhtmlindex.man
# Only need to install man pages for programs/scripts being installed
appman_DATA = $(bin_PROGRAMS:%$(EXEEXT)=%.@APP_MAN_SUFFIX@) $(bin_SCRIPTS:%=%.@APP_MAN_SUFFIX@)
EXTRA_DIST += $(appman_PRE)
CLEANFILES += $(appman_DATA)
# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
MAN_SUBSTS += \
-e 's|__cpp__|$(RAWCPP)|g'
SUFFIXES = .$(APP_MAN_SUFFIX) .man
.man.$(APP_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
EXTRA_DIST += ChangeLog
MAINTAINERCLEANFILES = ChangeLog
.PHONY: ChangeLog INSTALL
INSTALL:
$(INSTALL_CMD)
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog INSTALL

1011
imake/Makefile.in Normal file

File diff suppressed because it is too large Load Diff

42
imake/README.md Normal file
View File

@ -0,0 +1,42 @@
The imake package contains the imake utility, plus the following support
programs:
- ccmakedep
- mergelib
- revpath
- mkdirhier
- makeg
- cleanlinks
- mkhtmlindex
- xmkmf
Most usage will also require installing the Xorg util/cf files which contain
the platform-specific configuration data for known platforms.
The X Window System used imake extensively up through the X11R6.9 release,
for both full builds within the source tree and external software.
X moved to GNU autoconf and automake for its build system in 2005 for
X11R7.0 and later releases, but still provides imake for building existing
external software programs that have not yet converted, though we are not
actively maintaining it for new OS or platform releases.
More information about Imake and its usage may be found in the resources at:
- https://www.snake.net/software/imake-stuff/
- https://www.kitebird.com/imake-book/
All questions regarding this software should be directed at the
Xorg mailing list:
https://lists.x.org/mailman/listinfo/xorg
The master development code repository can be found at:
https://gitlab.freedesktop.org/xorg/util/imake
Please submit bug reports and requests to merge patches there.
For patch submission instructions, see:
https://www.x.org/wiki/Development/Documentation/SubmittingPatches

3338
imake/aclocal.m4 vendored Normal file

File diff suppressed because it is too large Load Diff

142
imake/ccmakedep.man Normal file
View File

@ -0,0 +1,142 @@
.TH ccmakedep 1 __xorgversion__
.SH NAME
ccmakedep \- create dependencies in makefiles using a C compiler
.SH SYNOPSIS
.B ccmakedep
[
.BI cpp-flags
] [
.BI \-w width
] [
.BI \-s magic-string
] [
.BI \-f makefile
] [
.BI \-o object-suffix
] [
.B \-v
] [
.B \-a
] [
.BI \-cc compiler
] [
\-\^\-
.I options
\-\^\-
]
.I sourcefile
\^.\|.\|.
.SH DESCRIPTION
The
.B ccmakedep
program calls a C compiler to preprocess each
.IR sourcefile ,
and uses the output to construct
.I makefile
rules describing their dependencies.
These rules instruct
.BR make (1)
on which object files must be recompiled when a dependency has changed.
.PP
By default,
.B ccmakedep
places its output in the file named
.I makefile
if it exists, otherwise
.I Makefile.
An alternate makefile may be specified with the
.B \-f
option.
It first searches the makefile for a line beginning with
.sp
\& # DO NOT DELETE
.sp
or one provided with the
.B \-s
option, as a delimiter for the dependency output.
If it finds it, it will delete everything following this up to the end of
the makefile and put the output after this line.
If it doesn't find it, the program will append the string to the makefile
and place the output after that.
.SH EXAMPLE
Normally,
.B ccmakedep
will be used in a makefile target so that typing 'make depend' will bring
the dependencies up to date for the makefile.
For example,
.nf
SRCS\0=\0file1.c\0file2.c\0.\|.\|.
CFLAGS\0=\0\-O\0\-DHACK\0\-I\^.\^.\^/foobar\0\-xyz
depend:
ccmakedep\0\-\^\-\0$(CFLAGS)\0\-\^\-\0$(SRCS)
.fi
.SH OPTIONS
The program will ignore any option that it does not understand, so you may
use the same arguments that you would for
.BR cc (1),
including
.B \-D
and
.B \-U
options to define and undefine symbols and
.B \-I
to set the include path.
.TP
.B \-a
Append the dependencies to the file instead of replacing existing
dependencies.
.TP
.BI \-cc compiler
Use this compiler to generate dependencies.
.TP
.BI \-f makefile
Filename.
This allows you to specify an alternate makefile in which
.B ccmakedep
can place its output.
Specifying \(lq\-\(rq as the file name (that is,
.BR \-f\- )
sends the output to standard output instead of modifying an existing file.
.TP
.BI \-s string
Starting string delimiter.
This option permits you to specify a different string for
.B ccmakedep
to look for in the makefile.
The default is \(lq# DO NOT DELETE\(rq.
.TP
.BI \-v
Be verbose: display the C compiler command before running it.
.TP
.BI \-\^\- " options " \-\^\-
If
.B ccmakedep
encounters a double hyphen (\-\^\-) in the argument list, then any
unrecognized arguments following it will be silently ignored.
A second double hyphen terminates this special treatment.
In this way,
.B ccmakedep
can be made to safely ignore esoteric compiler arguments that might
normally be found in a CFLAGS
.B make
macro (see the
.B EXAMPLE
section above).
.BR \-D ,
.BR \-I ,
and
.B \-U
options appearing between the pair of double hyphens are still processed
normally.
.SH "SEE ALSO"
.BR cc (1),
.BR make (1),
.BR makedepend (1),
.BR ccmakedep (1).
.SH AUTHOR
.B ccmakedep
was written by the X Consortium.
.PP
Colin Watson wrote this manual page, originally for the Debian Project,
based partly on the manual page for
.BR makedepend (1).

26
imake/cleanlinks Normal file
View File

@ -0,0 +1,26 @@
#!/bin/sh
#
# Copyright © 2000, 2003 by The XFree86 Project, Inc
#
# Remove dangling symlinks and empty directories from a shadow link tree
# (created with lndir).
#
# Author: David Dawes <dawes@xfree86.org>
#
find . -type l -print |
(
read i
while [ X"$i" != X ]; do
if [ ! -f "$i" ]; then
echo $i is a dangling symlink, removing
rm -f "$i"
fi
read i
done
)
echo Removing empty directories ...
#find . -type d -depth -print | xargs rmdir > /dev/null 2>&1
find . -depth -type d -empty -print -exec rmdir {} \;
exit 0

29
imake/cleanlinks.man Normal file
View File

@ -0,0 +1,29 @@
.TH cleanlinks 1 __vendorversion__
.SH NAME
cleanlinks \- remove dangling symbolic links and empty directories
.SH SYNOPSIS
.B cleanlinks
.SH DESCRIPTION
The
.I cleanlinks
program searches the directory tree descended from the current directory for
symbolic links whose targets do not exist, and removes them.
It then removes all empty directories in that directory tree.
.PP
.I cleanlinks
is useful for cleaning up a shadow link tree created with
.BR lndir (1)
after files have been removed from the real directory.
.SH DIAGNOSTICS
A message will be printed upon encountering each dangling symlink and empty
directory.
.SH SEE ALSO
.BR lndir (1).
.SH AUTHOR
.PP
The version of the
.I cleanlinks
included in this X.Org Foundation release was originally written
by David Dawes wrote as a part of XFree86.
.PP
Colin Watson wrote this manual page, originally for the Debian Project.

347
imake/compile Executable file
View File

@ -0,0 +1,347 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2012-10-14.11; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# 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, 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, see <http://www.gnu.org/licenses/>.
# 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.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

1476
imake/config.guess vendored Executable file

File diff suppressed because it is too large Load Diff

67
imake/config.h.in Normal file
View File

@ -0,0 +1,67 @@
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `mkstemp' function. */
#undef HAVE_MKSTEMP
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Major version of this package */
#undef PACKAGE_VERSION_MAJOR
/* Minor version of this package */
#undef PACKAGE_VERSION_MINOR
/* Patch version of this package */
#undef PACKAGE_VERSION_PATCHLEVEL
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Version number of package */
#undef VERSION

1801
imake/config.sub vendored Executable file

File diff suppressed because it is too large Load Diff

12788
imake/configure vendored Executable file

File diff suppressed because it is too large Load Diff

130
imake/configure.ac Normal file
View File

@ -0,0 +1,130 @@
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, and that the name of Red Hat not be used in
dnl advertising or publicity pertaining to distribution of the software without
dnl specific, written prior permission. Red Hat makes no
dnl representations about the suitability of this software for any purpose. It
dnl is provided "as is" without express or implied warranty.
dnl
dnl RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
dnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
dnl EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
dnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
dnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
dnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
dnl PERFORMANCE OF THIS SOFTWARE.
dnl
dnl Process this file with autoconf to create configure.
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([imake], [1.0.8],
[https://gitlab.freedesktop.org/xorg/util/imake/issues], [imake])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h])
# Initialize Automake
AM_INIT_AUTOMAKE([foreign dist-bzip2])
# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
m4_ifndef([XORG_MACROS_VERSION],
[m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
AC_PROG_CPP
XORG_PROG_RAWCPP
CPP_PROGRAM=${RAWCPP}
AC_SUBST(CPP_PROGRAM)
AC_CHECK_FUNCS([mkstemp])
AC_CHECK_PROG(HAS_PERL, perl, yes)
AM_CONDITIONAL([HAS_PERL], [test "x$HAS_PERL" = xyes])
m4_ifdef([AS_HELP_STRING], , [m4_define([AS_HELP_STRING], m4_defn([AC_HELP_STRING]))])
DEFAULT_XCONFDIR="${libdir}/X11/config"
AC_ARG_WITH(config-dir,
AS_HELP_STRING([--with-config-dir=<path>], [Path to config dir (default: ${libdir}/X11/config)]),
[XCONFDIR="$withval"],
[XCONFDIR="$DEFAULT_XCONFDIR"])
AC_SUBST(XCONFDIR)
DEFAULT_PREPROCESSCMD_MKDEPEND="gcc -E"
AC_ARG_WITH(script-preproc-cmd,
AS_HELP_STRING([--with-script-preproc-cmd=CMD], [Preprocessor command to run on scripts (default: "gcc -E")]),
[PREPROCESSCMD_MKDEPEND="$withval"],
[PREPROCESSCMD_MKDEPEND="$DEFAULT_PREPROCESSCMD_MKDEPEND"])
AC_SUBST(PREPROCESSCMD_MKDEPEND)
DEFAULT_ARCMD="ar clq"
AC_ARG_WITH(create-lib-cmd,
AS_HELP_STRING([--with-create-lib-cmd=CMD], [Command to create libraries (default: "ar clq")]),
[ARCMD="$withval"],
[ARCMD="$DEFAULT_ARCMD"])
AC_SUBST(ARCMD)
DEFAULT_RANLIB="ranlib"
AC_ARG_WITH(clean-lib-cmd,
AS_HELP_STRING([--with-clean-lib-cmd=CMD], [Command to clean up libraries (default: "ranlib")]),
[RANLIB="$withval"],
[RANLIB="$DEFAULT_RANLIB"])
AC_SUBST(RANLIB)
AC_ARG_ENABLE(revpath,
AS_HELP_STRING([--disable-revpath], [Build revpath (default: enabled)]),
[BUILD_REVPATH="$enableval"],
[BUILD_REVPATH=yes])
AM_CONDITIONAL([BUILD_REVPATH], [test "x$BUILD_REVPATH" = xyes])
AC_ARG_ENABLE(makeg,
AS_HELP_STRING([--disable-makeg], [Build makeg (default: enabled)]),
[BUILD_MAKEG="$enableval"],
[BUILD_MAKEG=yes])
AM_CONDITIONAL([BUILD_MAKEG], [test "x$BUILD_MAKEG" = xyes])
AC_ARG_ENABLE(xmkmf,
AS_HELP_STRING([--disable-xmkmf], [Build xmkmf (default: enabled)]),
[BUILD_XMKMF="$enableval"],
[BUILD_XMKMF=yes])
AM_CONDITIONAL([BUILD_XMKMF], [test "x$BUILD_XMKMF" = xyes])
AC_ARG_ENABLE(ccmakedep,
AS_HELP_STRING([--disable-ccmakedep], [Build ccmakedep (default: enabled)]),
[BUILD_CCMAKEDEP="$enableval"],
[BUILD_CCMAKEDEP=yes])
AM_CONDITIONAL([BUILD_CCMAKEDEP], [test "x$BUILD_CCMAKEDEP" = xyes])
AC_ARG_ENABLE(mergelib,
AS_HELP_STRING([--disable-mergelib], [Build mergelib (default: enabled)]),
[BUILD_MERGELIB="$enableval"],
[BUILD_MERGELIB=yes])
AM_CONDITIONAL([BUILD_MERGELIB], [test "x$BUILD_MERGELIB" = xyes])
AC_ARG_ENABLE(mkdirhier,
AS_HELP_STRING([--disable-mkdirhier], [Build mkdirhier (default: enabled)]),
[BUILD_MKDIRHIER="$enableval"],
[BUILD_MKDIRHIER=yes])
AM_CONDITIONAL([BUILD_MKDIRHIER], [test "x$BUILD_MKDIRHIER" = xyes])
AC_ARG_ENABLE(cleanlinks,
AS_HELP_STRING([--disable-cleanlinks], [Build cleanlinks (default: enabled)]),
[BUILD_CLEANLINKS="$enableval"],
[BUILD_CLEANLINKS=yes])
AM_CONDITIONAL([BUILD_CLEANLINKS], [test "x$BUILD_CLEANLINKS" = xyes])
AC_ARG_ENABLE(mkhtmlindex,
AS_HELP_STRING([--disable-mkhtmlindex], [Build mkhtmlindex (default: enabled)]),
[BUILD_MKHTMLINDEX="$enableval"],
[BUILD_MKHTMLINDEX=yes])
AM_CONDITIONAL([BUILD_MKHTMLINDEX], [test "x$BUILD_MKHTMLINDEX" = xyes])
# Checks for pkg-config packages
PKG_CHECK_MODULES(XPROTO, xproto)
AC_OUTPUT([Makefile])

791
imake/depcomp Executable file
View File

@ -0,0 +1,791 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2013-05-30.07; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# 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, 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, see <http://www.gnu.org/licenses/>.
# 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.
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
Environment variables:
depmode Dependency tracking mode.
source Source file read by 'PROGRAMS ARGS'.
object Object file output by 'PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputting dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "depcomp $scriptversion"
exit $?
;;
esac
# Get the directory component of the given path, and save it in the
# global variables '$dir'. Note that this directory component will
# be either empty or ending with a '/' character. This is deliberate.
set_dir_from ()
{
case $1 in
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
*) dir=;;
esac
}
# Get the suffix-stripped basename of the given path, and save it the
# global variable '$base'.
set_base_from ()
{
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
}
# If no dependency file was actually created by the compiler invocation,
# we still have to create a dummy depfile, to avoid errors with the
# Makefile "include basename.Plo" scheme.
make_dummy_depfile ()
{
echo "#dummy" > "$depfile"
}
# Factor out some common post-processing of the generated depfile.
# Requires the auxiliary global variable '$tmpdepfile' to be set.
aix_post_process_depfile ()
{
# If the compiler actually managed to produce a dependency file,
# post-process it.
if test -f "$tmpdepfile"; then
# Each line is of the form 'foo.o: dependency.h'.
# Do two passes, one to just change these to
# $object: dependency.h
# and one to simply output
# dependency.h:
# which is needed to avoid the deleted-header problem.
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
} > "$depfile"
rm -f "$tmpdepfile"
else
make_dummy_depfile
fi
}
# A tabulation character.
tab=' '
# A newline character.
nl='
'
# Character ranges might be problematic outside the C locale.
# These definitions help.
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
lower=abcdefghijklmnopqrstuvwxyz
digits=0123456789
alpha=${upper}${lower}
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
# Avoid interferences from the environment.
gccflag= dashmflag=
# Some modes work just like other modes, but use different flags. We
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write. Note that we *cannot* use a case
# here, because this file can only contain one case statement.
if test "$depmode" = hp; then
# HP compiler uses -M and no extra arg.
gccflag=-M
depmode=gcc
fi
if test "$depmode" = dashXmstdout; then
# This is just like dashmstdout with a different argument.
dashmflag=-xM
depmode=dashmstdout
fi
cygpath_u="cygpath -u -f -"
if test "$depmode" = msvcmsys; then
# This is just like msvisualcpp but w/o cygpath translation.
# Just convert the backslash-escaped backslashes to single forward
# slashes to satisfy depend.m4
cygpath_u='sed s,\\\\,/,g'
depmode=msvisualcpp
fi
if test "$depmode" = msvc7msys; then
# This is just like msvc7 but w/o cygpath translation.
# Just convert the backslash-escaped backslashes to single forward
# slashes to satisfy depend.m4
cygpath_u='sed s,\\\\,/,g'
depmode=msvc7
fi
if test "$depmode" = xlc; then
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
gccflag=-qmakedep=gcc,-MF
depmode=gcc
fi
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
## the command line argument order; so add the flags where they
## appear in depend2.am. Note that the slowdown incurred here
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
for arg
do
case $arg in
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
*) set fnord "$@" "$arg" ;;
esac
shift # fnord
shift # $arg
done
"$@"
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
mv "$tmpdepfile" "$depfile"
;;
gcc)
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
## (see the conditional assignment to $gccflag above).
## There are various ways to get dependency output from gcc. Here's
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## up in a subdir. Having to rename by hand is ugly.
## (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
## -MM, not -M (despite what the docs say). Also, it might not be
## supported by the other compilers which use the 'gcc' depmode.
## - Using -M directly means running the compiler twice (even worse
## than renaming).
if test -z "$gccflag"; then
gccflag=-MD,
fi
"$@" -Wp,"$gccflag$tmpdepfile"
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
# The second -e expression handles DOS-style file names with drive
# letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
## This next piece of magic avoids the "deleted header file" problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
## Some versions of gcc put a space before the ':'. On the theory
## that the space means something, we add a space to the output as
## well. hp depmode also adds that space, but also prefixes the VPATH
## to the object. Take care to not repeat it in the output.
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
sgi)
if test "$libtool" = yes; then
"$@" "-Wp,-MDupdate,$tmpdepfile"
else
"$@" -MDupdate "$tmpdepfile"
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
echo "$object : \\" > "$depfile"
# Clip off the initial element (the dependent). Don't try to be
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
# the IRIX cc adds comments like '#:fec' to the end of the
# dependency line.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
| tr "$nl" ' ' >> "$depfile"
echo >> "$depfile"
# The second pass generates a dummy entry for each header file.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> "$depfile"
else
make_dummy_depfile
fi
rm -f "$tmpdepfile"
;;
xlc)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
aix)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
# current directory. Also, the AIX compiler puts '$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
set_dir_from "$object"
set_base_from "$object"
if test "$libtool" = yes; then
tmpdepfile1=$dir$base.u
tmpdepfile2=$base.u
tmpdepfile3=$dir.libs/$base.u
"$@" -Wc,-M
else
tmpdepfile1=$dir$base.u
tmpdepfile2=$dir$base.u
tmpdepfile3=$dir$base.u
"$@" -M
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
do
test -f "$tmpdepfile" && break
done
aix_post_process_depfile
;;
tcc)
# tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
# FIXME: That version still under development at the moment of writing.
# Make that this statement remains true also for stable, released
# versions.
# It will wrap lines (doesn't matter whether long or short) with a
# trailing '\', as in:
#
# foo.o : \
# foo.c \
# foo.h \
#
# It will put a trailing '\' even on the last line, and will use leading
# spaces rather than leading tabs (at least since its commit 0394caf7
# "Emit spaces for -MD").
"$@" -MD -MF "$tmpdepfile"
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
# Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
# We have to change lines of the first kind to '$object: \'.
sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
# And for each line of the second kind, we have to emit a 'dep.h:'
# dummy dependency, to avoid the deleted-header problem.
sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
rm -f "$tmpdepfile"
;;
## The order of this option in the case statement is important, since the
## shell code in configure will try each of these formats in the order
## listed in this file. A plain '-MD' option would be understood by many
## compilers, so we must ensure this comes after the gcc and icc options.
pgcc)
# Portland's C compiler understands '-MD'.
# Will always output deps to 'file.d' where file is the root name of the
# source file under compilation, even if file resides in a subdirectory.
# The object file name does not affect the name of the '.d' file.
# pgcc 10.2 will output
# foo.o: sub/foo.c sub/foo.h
# and will wrap long lines using '\' :
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
set_dir_from "$object"
# Use the source, not the object, to determine the base name, since
# that's sadly what pgcc will do too.
set_base_from "$source"
tmpdepfile=$base.d
# For projects that build the same source file twice into different object
# files, the pgcc approach of using the *source* file root name can cause
# problems in parallel builds. Use a locking strategy to avoid stomping on
# the same $tmpdepfile.
lockdir=$base.d-lock
trap "
echo '$0: caught signal, cleaning up...' >&2
rmdir '$lockdir'
exit 1
" 1 2 13 15
numtries=100
i=$numtries
while test $i -gt 0; do
# mkdir is a portable test-and-set.
if mkdir "$lockdir" 2>/dev/null; then
# This process acquired the lock.
"$@" -MD
stat=$?
# Release the lock.
rmdir "$lockdir"
break
else
# If the lock is being held by a different process, wait
# until the winning process is done or we timeout.
while test -d "$lockdir" && test $i -gt 0; do
sleep 1
i=`expr $i - 1`
done
fi
i=`expr $i - 1`
done
trap - 1 2 13 15
if test $i -le 0; then
echo "$0: failed to acquire lock after $numtries attempts" >&2
echo "$0: check lockdir '$lockdir'" >&2
exit 1
fi
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
# Each line is of the form `foo.o: dependent.h',
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process this invocation
# correctly. Breaking it into two sed invocations is a workaround.
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp2)
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
# compilers, which have integrated preprocessors. The correct option
# to use with these is +Maked; it writes dependencies to a file named
# 'foo.d', which lands next to the object file, wherever that
# happens to be.
# Much of this is similar to the tru64 case; see comments there.
set_dir_from "$object"
set_base_from "$object"
if test "$libtool" = yes; then
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir.libs/$base.d
"$@" -Wc,+Maked
else
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir$base.d
"$@" +Maked
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile1" "$tmpdepfile2"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
# Add 'dependent.h:' lines.
sed -ne '2,${
s/^ *//
s/ \\*$//
s/$/:/
p
}' "$tmpdepfile" >> "$depfile"
else
make_dummy_depfile
fi
rm -f "$tmpdepfile" "$tmpdepfile2"
;;
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# dependencies in 'foo.d' instead, so we check for that too.
# Subdirectories are respected.
set_dir_from "$object"
set_base_from "$object"
if test "$libtool" = yes; then
# Libtool generates 2 separate objects for the 2 libraries. These
# two compilations output dependencies in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
# automatically cleaned when .libs/ is deleted, while ignoring
# the former would cause a distcleancheck panic.
tmpdepfile1=$dir$base.o.d # libtool 1.5
tmpdepfile2=$dir.libs/$base.o.d # Likewise.
tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
"$@" -Wc,-MD
else
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir$base.d
tmpdepfile3=$dir$base.d
"$@" -MD
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
do
test -f "$tmpdepfile" && break
done
# Same post-processing that is required for AIX mode.
aix_post_process_depfile
;;
msvc7)
if test "$libtool" = yes; then
showIncludes=-Wc,-showIncludes
else
showIncludes=-showIncludes
fi
"$@" $showIncludes > "$tmpdepfile"
stat=$?
grep -v '^Note: including file: ' "$tmpdepfile"
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
# The first sed program below extracts the file names and escapes
# backslashes for cygpath. The second sed program outputs the file
# name when reading, but also accumulates all include files in the
# hold buffer in order to output them again at the end. This only
# works with sed implementations that can handle large buffers.
sed < "$tmpdepfile" -n '
/^Note: including file: *\(.*\)/ {
s//\1/
s/\\/\\\\/g
p
}' | $cygpath_u | sort -u | sed -n '
s/ /\\ /g
s/\(.*\)/'"$tab"'\1 \\/p
s/.\(.*\) \\/\1:/
H
$ {
s/.*/'"$tab"'/
G
p
}' >> "$depfile"
echo >> "$depfile" # make sure the fragment doesn't end with a backslash
rm -f "$tmpdepfile"
;;
msvc7msys)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
#nosideeffect)
# This comment above is used by automake to tell side-effect
# dependency tracking mechanisms from slower ones.
dashmstdout)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# Remove '-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
test -z "$dashmflag" && dashmflag=-M
# Require at least two characters before searching for ':'
# in the target name. This is to cope with DOS-style filenames:
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
"$@" $dashmflag |
sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process this sed invocation
# correctly. Breaking it into two sed invocations is a workaround.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
dashXmstdout)
# This case only exists to satisfy depend.m4. It is never actually
# run, as this mode is specially recognized in the preamble.
exit 1
;;
makedepend)
"$@" || exit $?
# Remove any Libtool call
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# X makedepend
shift
cleared=no eat=no
for arg
do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
if test $eat = yes; then
eat=no
continue
fi
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
-arch)
eat=yes ;;
-*|$object)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
obj_suffix=`echo "$object" | sed 's/^.*\././'`
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
# makedepend may prepend the VPATH from the source file name to the object.
# No need to regex-escape $object, excess matching of '.' is harmless.
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process the last invocation
# correctly. Breaking it into two sed invocations is a workaround.
sed '1,2d' "$tmpdepfile" \
| tr ' ' "$nl" \
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile" "$tmpdepfile".bak
;;
cpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# Remove '-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
"$@" -E \
| sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
| sed '$ s: \\$::' > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
cat < "$tmpdepfile" >> "$depfile"
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
IFS=" "
for arg
do
case "$arg" in
-o)
shift
;;
$object)
shift
;;
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
shift
;;
*)
set fnord "$@" "$arg"
shift
shift
;;
esac
done
"$@" -E 2>/dev/null |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
echo "$tab" >> "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvcmsys)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
none)
exec "$@"
;;
*)
echo "Unknown depmode $depmode" 1>&2
exit 1
;;
esac
exit 0
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

2189
imake/imake.c Normal file

File diff suppressed because it is too large Load Diff

282
imake/imake.man Normal file
View File

@ -0,0 +1,282 @@
.\" Copyright (c) 1993, 1994, 1998 The Open Group
.\"
.\" Permission to use, copy, modify, distribute, and sell this software and its
.\" documentation for any purpose is hereby granted without fee, provided that
.\" the above copyright notice appear in all copies and that both that
.\" copyright notice and this permission notice appear in supporting
.\" documentation.
.\"
.\" The above copyright notice and this permission notice shall be included
.\" in all copies or substantial portions of the Software.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
.\" IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
.\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
.\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
.\" OTHER DEALINGS IN THE SOFTWARE.
.\"
.\" Except as contained in this notice, the name of The Open Group shall
.\" not be used in advertising or otherwise to promote the sale, use or
.\" other dealings in this Software without prior written authorization
.\" from The Open Group.
.\"
.de EX
.RS
.nf
.ft CW
..
.de EE
.ft
.fi
.RE
..
.TH IMAKE 1 __xorgversion__
.SH NAME
imake \- C preprocessor interface to the make utility
.SH SYNOPSIS
\fBimake\fP [ \fB\-D\fP\fIdefine\fP ] [ \fB\-I\fP\fIdir\fP ]
[ \fB\-U\fP\fIdefine\fP ]
[ \fB\-T\fP\fItemplate\fP ]
[ \fB\-f\fP \fIfilename\fP ] [ \fB\-C\fP \fIfilename\fP ]
[ \fB\-s\fP \fIfilename\fP ] [ \fB\-e\fP ]
[ \fB\-v\fP ]
.SH DESCRIPTION
.I Imake
is used to
generate \fIMakefiles\fP from a template, a set of \fIcpp\fP macro functions,
and a per-directory input file called an \fIImakefile\fP. This allows machine
dependencies (such as compiler options, alternate command names, and special
\fImake\fP rules) to be kept separate from the descriptions of the
various items to be built.
.SH OPTIONS
The following command line options may be passed to \fIimake\fP:
.TP 8
.B \-D\fIdefine\fP
This option is passed directly to \fIcpp\fP. It is typically used to set
directory-specific variables. For example, the X Window System used this
flag to set \fITOPDIR\fP to the name of the directory containing the top
of the core distribution and \fICURDIR\fP to the name of the current
directory, relative to the top.
.TP 8
.B \-I\fIdirectory\fP
This option is passed directly to \fIcpp\fP. It is typically used to
indicate the directory in which the \fIimake\fP template and configuration
files may be found.
.TP 8
.B \-U\fIdefine\fP
This option is passed directly to \fIcpp\fP. It is typically used to
unset variables when debugging \fIimake\fP configuration files.
.TP 8
.B \-T\fItemplate\fP
This option specifies the name of the master template file (which is usually
located in the directory specified with \fI\-I\fP) used by \fIcpp\fP.
The default is \fIImake.tmpl\fP.
.TP 8
.B \-f \fIfilename\fP
This option specifies the name of the per-directory input file. The default
is \fIImakefile\fP.
.TP 8
.B \-C \fIfilename\fP
This option specifies the name of the .c file that is constructed in the
current directory. The default is \fIImakefile.c\fP.
.TP 8
.B \-s \fIfilename\fP
This option specifies the name of the \fImake\fP description file to be
generated but \fImake\fP should not be invoked.
If the \fIfilename\fP is a dash (\-), the
output is written to \fIstdout\fP. The default is to generate, but
not execute, a \fIMakefile\fP.
.TP 8
.B \-e
This option indicates the \fIimake\fP should execute the generated
\fIMakefile\fP. The default is to leave this to the user.
.TP 8
.B \-v
This option indicates that \fIimake\fP should print the \fIcpp\fP command line
that it is using to generate the \fIMakefile\fP.
.SH "HOW IT WORKS"
\fIImake\fP invokes \fIcpp\fP with any \fI\-I\fP or \fI\-D\fP flags passed
on the command line and passes the name of a file containing the
following 3 lines:
.EX
\& #define IMAKE_TEMPLATE "Imake.tmpl"
\& #define INCLUDE_IMAKEFILE <Imakefile>
\& #include IMAKE_TEMPLATE
.EE
where \fIImake.tmpl\fP and \fIImakefile\fP may be overridden by the
\fI\-T\fP and \fI\-f\fP command options, respectively.
.PP
The IMAKE_TEMPLATE typically
reads in a file containing machine-dependent parameters
(specified as \fIcpp\fP symbols), a site-specific parameters file,
a file defining variables,
a file
containing \fIcpp\fP macro functions for generating \fImake\fP rules, and
finally the \fIImakefile\fP (specified by INCLUDE_IMAKEFILE) in the current
directory. The \fIImakefile\fP uses the macro functions to indicate what
targets should be built; \fIimake\fP takes care of generating the appropriate
rules.
.PP
.I Imake
configuration files contain two types of variables, imake variables
and make variables. The imake variables are interpreted by cpp when
.I imake
is run. By convention they are mixed case. The make variables are
written into the
.I Makefile
for later interpretation by
.I make.
By convention make variables are upper case.
.PP
The rules file (usually named \fIImake.rules\fP in the configuration
directory) contains a variety of \fIcpp\fP macro functions that are
configured according to the current platform. \fIImake\fP replaces
any occurrences of the string ``@@'' with a newline to allow macros that
generate more than one line of \fImake\fP rules.
For example, the macro
.EX
\& #define program_target(program, objlist) @@\e
program: objlist @@\e
$(CC) \-o $@ objlist $(LDFLAGS)
.EE
when called with
.I "program_target(foo, foo1.o foo2.o)"
will expand to
.EX
foo: foo1.o foo2.o
$(CC) \-o $@ foo1.o foo2.o $(LDFLAGS)
.EE
.PP
\fIImake\fP also replaces any occurrences of the word ``XCOMM'' with
the character ``#'' to permit placing comments in the Makefile without
causing ``invalid directive'' errors from the preprocessor.
.PP
Some complex \fIimake\fP macros require generated \fImake\fP variables
local to each invocation of the macro, often because their value
depends on parameters passed to the macro.
Such variables can be created by using an \fIimake\fP variable
of the form \fBXVARdef\fP\fIn\fP, where \fIn\fP is a single digit.
A unique \fImake\fP variable will be substituted. Later occurrences
of the variable \fBXVARuse\fP\fIn\fP will
be replaced by the variable created by the corresponding
\fBXVARdef\fP\fIn\fP.
.PP
On systems whose \fIcpp\fP reduces multiple tabs and spaces to a single
space, \fIimake\fP attempts to put back any necessary tabs (\fImake\fP is
very picky about the difference between tabs and spaces). For this reason,
colons (:) in command lines must be preceded by a backslash (\\).
.SH "USE WITH THE X WINDOW SYSTEM"
The X Window System used \fIimake\fP extensively up through the X11R6.9
release, for both full builds within the source tree and external software.
X has since moved to GNU autoconf and automake for its build system in
X11R7.0 and later releases, but still maintains imake for building existing
external software programs that have not yet converted.
.PP
As mentioned above, two special
variables, \fITOPDIR\fP and \fICURDIR,\fP are set to make referencing files
using relative path names easier. For example, the following command is
generated automatically to build the \fIMakefile\fP in the directory
\fIlib/X/\fP (relative to the top of the sources):
.EX
% ../.././config/imake \-I../.././config \\
\-DTOPDIR=../../. \-DCURDIR=./lib/X
.EE
When building X programs outside the source tree, a special symbol
\fIUseInstalled\fP is defined and \fITOPDIR\fP and
\fICURDIR\fP are omitted. If the configuration files have been
properly installed, the script \fIxmkmf\fP(1) may be used.
.SH "INPUT FILES"
Here is a summary of the files read by
.I imake
as used by X.
The indentation shows what files include what other files.
.EX
Imake.tmpl generic variables
site.def site-specific, BeforeVendorCF defined
*.cf machine-specific
*Lib.rules shared library rules
site.def site-specific, AfterVendorCF defined
Imake.rules rules
Project.tmpl X-specific variables
*Lib.tmpl shared library variables
Imakefile
Library.tmpl library rules
Server.tmpl server rules
Threads.tmpl multi-threaded rules
.EE
.LP
Note that \fIsite.def\fP gets included twice, once before the
\fI*.cf\fP file and once after. Although most site customizations
should be specified after the \fI*.cf\fP file, some, such as the
choice of compiler, need to be specified before, because other
variable settings may depend on them.
.LP
The first time \fIsite.def\fP is included, the variable BeforeVendorCF
is defined, and the second time, the variable AfterVendorCF is
defined. All code in \fIsite.def\fP should be inside an #ifdef for
one of these symbols.
.SH FILES
.TP
Imakefile.c
temporary input file for cpp
.TP
/tmp/Imf.XXXXXX
temporary Makefile for -s
.TP
/tmp/IIf.XXXXXX
temporary Imakefile if specified Imakefile uses # comments
.TP
__cpp__
default C preprocessor
.SH "SEE ALSO"
make(1), xmkmf(1)
.TP
Paul DuBois
imake-Related Software and Documentation,
http://www.snake.net/software/imake-stuff/
.TP
Paul DuBois
Software Portability with imake, Second Edition,
O'Reilly & Associates, 1996.
.TP
S. I. Feldman,
Make \(em A Program for Maintaining Computer Programs
.SH "ENVIRONMENT VARIABLES"
The following environment variables may be set, however their use is not
recommended as they introduce dependencies that are not readily apparent
when \fIimake\fP is run:
.TP 5
.B IMAKEINCLUDE
If defined, this specifies a ``\-I'' include argument to pass to the
C preprocessor. E.g., ``\-I/usr/X11/config''.
.TP 5
.B IMAKECPP
If defined, this should be a valid path to a preprocessor program.
E.g., ``/usr/local/cpp''.
By default,
.I imake
will use cc -E or __cpp__, depending on the OS specific configuration.
.TP 5
.B IMAKEMAKE
If defined, this should be a valid path to a make program,
such as ``/usr/local/make''.
By default,
.I imake
will use whatever
.I make
program is found using
.I execvp(3).
This variable is only used if the ``\-e'' option is specified.
.SH "AUTHOR"
Todd Brunhoff, Tektronix and MIT Project Athena; Jim Fulton, MIT X Consortium

1507
imake/imakemdep.h Normal file

File diff suppressed because it is too large Load Diff

501
imake/install-sh Executable file
View File

@ -0,0 +1,501 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2013-12-25.23; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# 'make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch.
tab=' '
nl='
'
IFS=" $tab$nl"
# Set DOITPROG to "echo" to test this script.
doit=${DOITPROG-}
doit_exec=${doit:-exec}
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
chgrpprog=${CHGRPPROG-chgrp}
chmodprog=${CHMODPROG-chmod}
chownprog=${CHOWNPROG-chown}
cmpprog=${CMPPROG-cmp}
cpprog=${CPPROG-cp}
mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
mvcmd=$mvprog
rmcmd="$rmprog -f"
stripcmd=
src=
dst=
dir_arg=
dst_arg=
copy_on_change=false
is_target_a_directory=possibly
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--help display this help and exit.
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
"
while test $# -ne 0; do
case $1 in
-c) ;;
-C) copy_on_change=true;;
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
case $mode in
*' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2
exit 1;;
esac
shift;;
-o) chowncmd="$chownprog $2"
shift;;
-s) stripcmd=$stripprog;;
-t)
is_target_a_directory=always
dst_arg=$2
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
shift;;
-T) is_target_a_directory=never;;
--version) echo "$0 $scriptversion"; exit $?;;
--) shift
break;;
-*) echo "$0: invalid option: $1" >&2
exit 1;;
*) break;;
esac
shift
done
# We allow the use of options -d and -T together, by making -d
# take the precedence; this is for compatibility with GNU install.
if test -n "$dir_arg"; then
if test -n "$dst_arg"; then
echo "$0: target directory not allowed when installing a directory." >&2
exit 1
fi
fi
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dst_arg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dst_arg"
shift # fnord
fi
shift # arg
dst_arg=$arg
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
done
fi
if test $# -eq 0; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
if test -z "$dir_arg"; then
if test $# -gt 1 || test "$is_target_a_directory" = always; then
if test ! -d "$dst_arg"; then
echo "$0: $dst_arg: Is not a directory." >&2
exit 1
fi
fi
fi
if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
trap "ret=141; $do_exit" 13
trap "ret=143; $do_exit" 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
case $mode in
# Optimize common cases.
*644) cp_umask=133;;
*755) cp_umask=22;;
*[0-7])
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
fi
for src
do
# Protect names problematic for 'test' and other utilities.
case $src in
-* | [=\(\)!]) src=./$src;;
esac
if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dst_arg
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test "$is_target_a_directory" = never; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
dstdir=`dirname "$dst"`
test -d "$dstdir"
dstdir_status=$?
fi
fi
obsolete_mkdir_used=false
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
*[0-7])
mkdir_umask=`expr $umask + 22 \
- $umask % 100 % 40 + $umask % 20 \
- $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
else
mkdir_mode=
fi
posix_mkdir=false
case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
if (umask $mkdir_umask &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/d" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
fi
trap '' 0;;
esac;;
esac
if
$posix_mkdir && (
umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
# The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
[-=\(\)!]*) prefix='./';;
*) prefix='';;
esac
oIFS=$IFS
IFS=/
set -f
set fnord $dstdir
shift
set +f
IFS=$oIFS
prefixes=
for d
do
test X"$d" = X && continue
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
else
case $prefix in
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
*) qprefix=$prefix;;
esac
prefixes="$prefixes '$qprefix'"
fi
fi
prefix=$prefix/
done
if test -n "$prefixes"; then
# Don't fail if two instances are running concurrently.
(umask $mkdir_umask &&
eval "\$doit_exec \$mkdirprog $prefixes") ||
test -d "$dstdir" || exit 1
obsolete_mkdir_used=true
fi
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
trap '' 0
fi
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

12
imake/makeg Normal file
View File

@ -0,0 +1,12 @@
#! /bin/sh
# makeg - run "make" with options necessary to make a debuggable executable
# set GDB=1 in your environment if using gdb on Solaris 2.
make="${MAKE-make}"
flags="CDEBUGFLAGS=-g CXXDEBUGFLAGS=-g"
# gdb on Solaris needs the stabs included in the executable
test "${GDB+yes}" = yes && flags="$flags -xs"
exec "$make" $flags LDSTRIPFLAGS= ${1+"$@"}

61
imake/makeg.man Normal file
View File

@ -0,0 +1,61 @@
.\" Copyright (c) 1996, 1998 The Open Group
.\"
.\" Permission to use, copy, modify, distribute, and sell this software and its
.\" documentation for any purpose is hereby granted without fee, provided that
.\" the above copyright notice appear in all copies and that both that
.\" copyright notice and this permission notice appear in supporting
.\" documentation.
.\"
.\" The above copyright notice and this permission notice shall be
.\" included in all copies or substantial portions of the Software.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
.\" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
.\" IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
.\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
.\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
.\" OTHER DEALINGS IN THE SOFTWARE.
.\"
.\" Except as contained in this notice, the name of The Open Group shall
.\" not be used in advertising or otherwise to promote the sale, use or
.\" other dealings in this Software without prior written authorization
.\" from The Open Group.
.\"
.\"
.TH MAKEG 1 __xorgversion__
.SH NAME
makeg \- make a debuggable executable
.SH SYNOPSIS
.B makeg
[
.I make-options .\|.\|.
] [
.I targets .\|.\|.
]
.SH DESCRIPTION
The
.I makeg
script runs
.I make,
passing it variable settings to create a debuggable target when used
with a Makefile generated by
.I imake.
For example, it arranges for the C compiler to be called with the
.B \-g
option.
.SH ENVIRONMENT
.TP 8
.B MAKE
The
.I make
program to use. Default ``make''.
.TP 8
.B GDB
Set to a non-null value if using the
.I gdb
debugger on Solaris 2, which requires additional debugging options to
be passed to the compiler.
.SH "SEE ALSO"
.I make (1),
.I imake (1)

281
imake/mdepend.cpp Normal file
View File

@ -0,0 +1,281 @@
XCOMM!/bin/sh
XCOMM
XCOMM Do the equivalent of the 'makedepend' program, but do it right.
XCOMM
XCOMM Usage:
XCOMM
XCOMM makedepend [cpp-flags] [-w width] [-s magic-string] [-f makefile]
XCOMM [-o object-suffix] [-v] [-a] [-cc compiler] [-d dependencyflag]
XCOMM
XCOMM Notes:
XCOMM
XCOMM The C compiler used can be overridden with the environment
XCOMM variable "CC" or the command line flag -cc.
XCOMM
XCOMM The "-v" switch of the "makedepend" program is not supported.
XCOMM
XCOMM
XCOMM This script should
XCOMM work on both USG and BSD systems. However, when System V.4 comes out,
XCOMM USG users will probably have to change "silent" to "-s" instead of
XCOMM "-" (at least, that is what the documentation implies).
XCOMM
CC=PREPROC
silent='-'
TMP=`pwd`/.mdep$$
rm -rf ${TMP}
if ! mkdir -p ${TMP}; then
echo "$0: cannot create ${TMP}, exit." >&2
fi
CPPCMD=${TMP}/a
DEPENDLINES=${TMP}/b
TMPMAKEFILE=${TMP}/c
MAGICLINE=${TMP}/d
ARGS=${TMP}/e
trap "rm -rf ${TMP}; exit 1" 1 2 15
trap "rm -rf ${TMP}; exit 0" 1 2 13
echo " \c" > $CPPCMD
if [ `wc -c < $CPPCMD` -eq 1 ]
then
c="\c"
n=
else
c=
n="-n"
fi
echo $n "$c" >$ARGS
files=
makefile=
magic_string='# DO NOT DELETE'
objsuffix='.o'
width=78
endmarker=""
verbose=n
append=n
compilerlistsdepends=n
while [ $# != 0 ]
do
if [ "$endmarker"x != x ] && [ "$endmarker" = "$1" ]; then
endmarker=""
else
case "$1" in
-D*|-I*|-U*)
echo $n " '$1'$c" >> $ARGS
;;
-g|-O) # ignore so we can just pass $(CFLAGS) in
;;
*)
if [ "$endmarker"x = x ]; then
case "$1" in
-w)
width="$2"
shift
;;
-s)
magic_string="$2"
shift
;;
-f*)
if [ "$1" = "-f-" ]; then
makefile="-"
elif [ "$1" = "-f" ]; then
makefile="$2"
shift
else
echo "$1" | sed 's/^\-f//' >${TMP}arg
makefile="`cat ${TMP}arg`"
rm -f ${TMP}arg
fi
;;
-o)
objsuffix="$2"
shift
;;
--*)
echo "$1" | sed 's/^\-\-//' >${TMP}end
endmarker="`cat ${TMP}end`"
rm -f ${TMP}end
if [ "$endmarker"x = x ]; then
endmarker="--"
fi
;;
-v)
verbose="y"
;;
-a)
append="y"
;;
-cc)
CC="$2"
shift
;;
# Flag to tell compiler to output dependencies directly
# For example, with Sun compilers, -xM or -xM1 or
# with gcc, -M
-d)
compilerlistsdepends="y"
compilerlistdependsflag="$2"
shift
;;
-*)
echo "Unknown option '$1' ignored" 1>&2
;;
*)
files="$files $1"
;;
esac
fi
;;
esac
fi
shift
done
echo ' $*' >> $ARGS
if [ "$compilerlistsdepends"x = "y"x ] ; then
CC="$CC $compilerlistdependsflag"
fi
echo "#!/bin/sh" > $CPPCMD
echo "exec $CC `cat $ARGS`" >> $CPPCMD
chmod +x $CPPCMD
rm $ARGS
case "$makefile" in
'')
if [ -r makefile ]
then
makefile=makefile
elif [ -r Makefile ]
then
makefile=Makefile
else
echo 'no makefile or Makefile found' 1>&2
exit 1
fi
;;
-)
makefile=$TMPMAKEFILE
;;
esac
if [ "$verbose"x = "y"x ]; then
cat $CPPCMD
fi
echo '' > $DEPENDLINES
if [ "$compilerlistsdepends"x = "y"x ] ; then
for i in $files
do
$CPPCMD $i >> $DEPENDLINES
done
else
for i in $files
do
$CPPCMD $i \
| sed -n "/^#/s;^;$i ;p"
done \
| sed -e 's|/[^/.][^/]*/\.\.||g' -e 's|/\.[^.][^/]*/\.\.||g' \
-e 's|"||g' -e 's| \./| |' \
| awk '{
if ($1 != $4 && $2 != "#ident" && $2 != "#pragma")
{
numparts = split( $1, ofileparts, "\." )
ofile = ""
for ( i = 1; i < numparts; i = i+1 )
{
if (i != 1 )
ofile = ofile "."
ofile = ofile ofileparts[i]
}
print ofile "'"$objsuffix"'", $4
}
}' \
| sort -u \
| awk '
{
newrec = rec " " $2
if ($1 != old1)
{
old1 = $1
if (rec != "")
print rec
rec = $1 ": " $2
}
else if (length (newrec) > '"$width"')
{
print rec
rec = $1 ": " $2
}
else
rec = newrec
}
END \
{
if (rec != "")
print rec
}' \
| egrep -v '^[^:]*:[ ]*$' >> $DEPENDLINES
fi
trap "" 1 2 13 15 # Now we are committed
case "$makefile" in
$TMPMAKEFILE)
;;
*)
rm -f $makefile.bak
cp $makefile $makefile.bak
echo "Appending dependencies to $makefile"
;;
esac
XCOMM
XCOMM If not -a, append the magic string and a blank line so that
XCOMM /^$magic_string/+1,\$d can be used to delete everything from after
XCOMM the magic string to the end of the file. Then, append a blank
XCOMM line again and then the dependencies.
XCOMM
if [ "$append" = "n" ]
then
cat >> $makefile << END_OF_APPEND
$magic_string
END_OF_APPEND
ed $silent $makefile << END_OF_ED_SCRIPT
/^$magic_string/+1,\$d
w
q
END_OF_ED_SCRIPT
echo '' >>$makefile
fi
cat $DEPENDLINES >>$makefile
case "$makefile" in
$TMPMAKEFILE)
cat $TMPMAKEFILE
;;
esac
rm -rf ${TMP}*
exit 0

103
imake/mergelib.cpp Normal file
View File

@ -0,0 +1,103 @@
XCOMM!/bin/sh
XCOMM
XCOMM Copyright (c) 1989, 1998 The Open Group
XCOMM
XCOMM Permission to use, copy, modify, distribute, and sell this software and
XCOMM its documentation for any purpose is hereby granted without fee, provided
XCOMM that the above copyright notice appear in all copies and that both that
XCOMM copyright notice and this permission notice appear in supporting
XCOMM documentation.
XCOMM
XCOMM The above copyright notice and this permission notice shall be included in
XCOMM all copies or substantial portions of the Software.
XCOMM
XCOMM THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
XCOMM IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
XCOMM FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
XCOMM OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
XCOMM AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
XCOMM CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
XCOMM
XCOMM Except as contained in this notice, the name of The Open Group shall not be
XCOMM used in advertising or otherwise to promote the sale, use or other dealings
XCOMM in this Software without prior written authorization from The Open Group.
XCOMM
XCOMM Author: Jim Fulton, MIT X Consortium
XCOMM
XCOMM mergelib - merge one library into another; this is commonly used by X
XCOMM to add the extension library into the base Xlib.
XCOMM
usage="usage: $0 to-library from-library [object-filename-prefix]"
objprefix=_
case $# in
2) ;;
3) objprefix=$3 ;;
*) echo "$usage" 1>&2; exit 1 ;;
esac
tolib=$1
fromlib=$2
if [ ! -f $fromlib ]; then
echo "$0: no such from-library $fromlib" 1>&2
exit 1
fi
if [ ! -f $tolib ]; then
echo "$0: no such to-library $tolib" 1>&2
exit 1
fi
XCOMM
XCOMM Create a temp directory, and figure out how to reference the
XCOMM object files from it (i.e. relative vs. absolute path names).
XCOMM
tmpdir=tmp.$$
origdir=..
XCOMM Remove directory if we fail
trap "rm -rf $tmpdir; exit 1" 1 2 15
trap "rm -rf $tmpdir; exit 0" 1 2 13
mkdir $tmpdir
XCOMM Security: if $tmpdir exists before mkdir exit immediately
if [ $? -gt 0 -o ! -d $tmpdir ]; then
echo "$0: unable to create temporary directory $tmpdir" 1>&2
exit 1
fi
case "$fromlib" in
/?*) upfrom= ;;
*) upfrom=../ ;;
esac
case "$tolib" in
/?*) upto= ;;
*) upto=../ ;;
esac
XCOMM
XCOMM In the temp directory, extract all of the object files and prefix
XCOMM them with some symbol to avoid name clashes with the base library.
XCOMM
cd $tmpdir || exit 1
ar x ${upfrom}$fromlib
for i in *.o; do
mv $i ${objprefix}$i
done
XCOMM
XCOMM Merge in the object modules, ranlib (if appropriate) and cleanup
XCOMM
ARCMD ${upto}$tolib *.o
RANLIB ${upto}$tolib
cd $origdir
rm -rf $tmpdir

27
imake/mergelib.man Normal file
View File

@ -0,0 +1,27 @@
.\" shorthand for double quote that works everywhere.
.ds q \N'34'
.TH MERGELIB 1 __xorgversion__
.SH NAME
mergelib \- merge one library into another
.SH SYNOPSIS
.B mergelib
.I to-library
.I from-library
.RI [ object-filename-prefix ]
.SH DESCRIPTION
The
.I mergelib
program merges objects from one library into another.
The names of object files in
.I from-library
will be prefixed by
.I object-filename-prefix
(\*q_\*q by default) to avoid name clashes.
The merged library will be left in
.IR to-library .
.SH AUTHOR
Jim Fulton wrote the
.I mergelib
program for the X Consortium.
.PP
Colin Watson wrote this manual page, originally for the Debian Project.

215
imake/missing Executable file
View File

@ -0,0 +1,215 @@
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
scriptversion=2013-10-28.13; # UTC
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# 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, 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, see <http://www.gnu.org/licenses/>.
# 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.
if test $# -eq 0; then
echo 1>&2 "Try '$0 --help' for more information"
exit 1
fi
case $1 in
--is-lightweight)
# Used by our autoconf macros to check whether the available missing
# script is modern enough.
exit 0
;;
--run)
# Back-compat with the calling convention used by older automake.
shift
;;
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
to PROGRAM being missing or too old.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
Supported PROGRAM values:
aclocal autoconf autoheader autom4te automake makeinfo
bison yacc flex lex help2man
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
'g' are ignored when checking the name.
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)"
exit $?
;;
-*)
echo 1>&2 "$0: unknown '$1' option"
echo 1>&2 "Try '$0 --help' for more information"
exit 1
;;
esac
# Run the given program, remember its exit status.
"$@"; st=$?
# If it succeeded, we are done.
test $st -eq 0 && exit 0
# Also exit now if we it failed (or wasn't found), and '--version' was
# passed; such an option is passed most likely to detect whether the
# program is present and works.
case $2 in --version|--help) exit $st;; esac
# Exit code 63 means version mismatch. This often happens when the user
# tries to use an ancient version of a tool on a file that requires a
# minimum version.
if test $st -eq 63; then
msg="probably too old"
elif test $st -eq 127; then
# Program was missing.
msg="missing on your system"
else
# Program was found and executed, but failed. Give up.
exit $st
fi
perl_URL=http://www.perl.org/
flex_URL=http://flex.sourceforge.net/
gnu_software_URL=http://www.gnu.org/software
program_details ()
{
case $1 in
aclocal|automake)
echo "The '$1' program is part of the GNU Automake package:"
echo "<$gnu_software_URL/automake>"
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/autoconf>"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
autoconf|autom4te|autoheader)
echo "The '$1' program is part of the GNU Autoconf package:"
echo "<$gnu_software_URL/autoconf/>"
echo "It also requires GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
esac
}
give_advice ()
{
# Normalize program name to check for.
normalized_program=`echo "$1" | sed '
s/^gnu-//; t
s/^gnu//; t
s/^g//; t'`
printf '%s\n' "'$1' is $msg."
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
case $normalized_program in
autoconf*)
echo "You should only need it if you modified 'configure.ac',"
echo "or m4 files included by it."
program_details 'autoconf'
;;
autoheader*)
echo "You should only need it if you modified 'acconfig.h' or"
echo "$configure_deps."
program_details 'autoheader'
;;
automake*)
echo "You should only need it if you modified 'Makefile.am' or"
echo "$configure_deps."
program_details 'automake'
;;
aclocal*)
echo "You should only need it if you modified 'acinclude.m4' or"
echo "$configure_deps."
program_details 'aclocal'
;;
autom4te*)
echo "You might have modified some maintainer files that require"
echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
echo "You should only need it if you modified a '.y' file."
echo "You may want to install the GNU Bison package:"
echo "<$gnu_software_URL/bison/>"
;;
lex*|flex*)
echo "You should only need it if you modified a '.l' file."
echo "You may want to install the Fast Lexical Analyzer package:"
echo "<$flex_URL>"
;;
help2man*)
echo "You should only need it if you modified a dependency" \
"of a man page."
echo "You may want to install the GNU Help2man package:"
echo "<$gnu_software_URL/help2man/>"
;;
makeinfo*)
echo "You should only need it if you modified a '.texi' file, or"
echo "any other file indirectly affecting the aspect of the manual."
echo "You might want to install the Texinfo package:"
echo "<$gnu_software_URL/texinfo/>"
echo "The spurious makeinfo call might also be the consequence of"
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
echo "want to install GNU make:"
echo "<$gnu_software_URL/make/>"
;;
*)
echo "You might have modified some files without having the proper"
echo "tools for further handling them. Check the 'README' file, it"
echo "often tells you about the needed prerequisites for installing"
echo "this package. You may also peek at any GNU archive site, in"
echo "case some other package contains this missing '$1' program."
;;
esac
}
give_advice "$1" | sed -e '1s/^/WARNING: /' \
-e '2,$s/^/ /' >&2
# Propagate the correct exit status (expected to be 127 for a program
# not found, 63 for a program that failed due to version mismatch).
exit $st
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

33
imake/mkdirhier Normal file
View File

@ -0,0 +1,33 @@
#!/bin/sh
# Courtesy of Paul Eggert
newline='
'
IFS=$newline
case ${1--} in
-*) echo >&2 "mkdirhier: usage: mkdirhier directory ..."; exit 1
esac
status=
for directory
do
case $directory in
'')
echo >&2 "mkdirhier: empty directory name"
status=1
continue;;
*"$newline"*)
echo >&2 "mkdirhier: directory name contains a newline: \`\`$directory''"
status=1
continue;;
-*) prefix=./;;
*) prefix=
esac
mkdir -p $prefix$directory || status=$?
done
exit $status

39
imake/mkdirhier.man Normal file
View File

@ -0,0 +1,39 @@
.\" Copyright (c) 1993, 1994, 1998 The Open Group
.\"
.\" Permission to use, copy, modify, distribute, and sell this software and its
.\" documentation for any purpose is hereby granted without fee, provided that
.\" the above copyright notice appear in all copies and that both that
.\" copyright notice and this permission notice appear in supporting
.\" documentation.
.\"
.\" The above copyright notice and this permission notice shall be included in
.\" all copies or substantial portions of the Software.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
.\" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
.\" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
.\" THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
.\" WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
.\" OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
.\" SOFTWARE.
.\"
.\" Except as contained in this notice, the name of The Open Group shall not
.\" be used in advertising or otherwise to promote the sale, use or other
.\" dealing in this Software without prior written authorization from The
.\" Open Group.
.\"
.TH MKDIRHIER 1 __xorgversion__
.SH NAME
mkdirhier \- makes a directory hierarchy
.SH SYNOPSIS
.B mkdirhier
directory ...
.SH DESCRIPTION
The
.I mkdirhier
command creates the specified directories. Unlike
.I mkdir
if any of the parent directories of the specified directory
do not exist, it creates them as well.
.SH "SEE ALSO"
mkdir(1)

32
imake/mkhtmlindex.man Normal file
View File

@ -0,0 +1,32 @@
.TH mkhtmlindex 1 __vendorversion__
.SH NAME
mkhtmlindex \- generate index files for HTML man pages
.SH SYNOPSIS
.B mkhtmlindex
.I htmlmandir
.SH DESCRIPTION
The
.I mkhtmlindex
program generates index files for a directory of HTML-formatted manual
pages.
It searches for files whose names are of the form \(lqname.1.html\(rq,
and outputs index files \(lqmanindex1.html\(rq, \(lqmanindex.2.html\(rq,
and so on, one for each manual volume.
Empty index files will be removed.
Names and descriptions are found by scanning the first
.I <H2>
section of each page.
.SH OPTIONS
.I mkhtmlindex
takes only one argument: the directory to process.
.SH NOTES
This utility is currently rather specific to X manual pages.
In particular, the format of the index files it outputs is not configurable,
nor is the HTML formatting it expects of manual pages.
.SH AUTHOR
The version of the
.I mkhtmlindex
included in this X.Org Foundation release was originally written
by David Dawes wrote as a part of XFree86.
.PP
Colin Watson wrote this manual page, originally for the Debian Project.

101
imake/mkhtmlindex.pl Normal file
View File

@ -0,0 +1,101 @@
#!/usr/bin/perl
#
# Copyright © 2000,2001 by VA Linux Systems, Inc.
#
# Generate index files for HTML man pages.
#
# Author: David Dawes <dawes@xfree86.org>
#
#
# Best viewed with tabs set to 4
#
if ($#ARGV ne 0) {
print STDERR "Usage: mkhtmlindex.pl htmlmandir\n";
exit 1;
}
$dir = $ARGV[0];
if (! -d $dir) {
print STDERR "$dir is not a directory\n";
exit 1;
}
@vollist = ("1", "2", "3", "4", "5", "6", "7", "8", "9", "o", "l", "n", "p");
$indexprefix = "manindex";
foreach $vol (@vollist) {
$empty = "yes";
$indexname="$dir/$indexprefix$vol.html";
# print "Processing volume $vol\n";
open(mindex, ">$indexname") || die "Can't create $indexname";
opendir(dir, "$dir") || die "Can't open $dir";
print mindex <<EOF;
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>X.Org Manual pages: Section $vol</TITLE>
</HEAD>
<BODY BGCOLOR="#efefef" TEXT="black" LINK="blue" VLINK="#551A8B" ALINK="red">
<H1>X.Org Manual pages: Section $vol</H1>
<P>
<UL>
EOF
foreach $file (sort readdir dir) {
if ($file =~ "\.$vol\.html") {
open(file, "<$dir/$file") || die "Can't open $dir/$file";
while (<file>) {
chop;
if (/^<[hH]2>/) {
if (! /<\/[hH]2>$/) {
while (<file> && ! /<\/[hH]2>$/) {
;
}
}
$heading = "";
while (<file>) {
if (/^<[hH]2>/) {
last;
}
$heading = "$heading" . "$_";
}
if ($heading) {
undef $empty;
$heading =~ s/--/-/;
($name, $descr) = split(/-/, $heading, 2);
$file =~ /(.*)\.$vol\.html/;
$fname = $1;
$descr =~ s/<[pP]>//g;
print mindex
"<LI><A href=\"$file\">$fname</A> - $descr</LI>";
}
last;
}
}
close file;
}
}
print mindex <<EOF;
</UL>
<P>
</BODY>
</HTML>
EOF
close mindex;
closedir dir;
if (defined $empty) {
# print "Removing empty $indexname\n";
unlink $indexname;
}
}

58
imake/mkhtmlindex.sh Normal file
View File

@ -0,0 +1,58 @@
#!/bin/sh
#
# Copyright © 2000 by Precision Insight, Inc.
#
# Generate index files for the HTML man pages
#
# Author: David Dawes <dawes@xfree86.org>
#
VOLLIST="1 2 3 4 5 6 7 8 9 o l n p"
INDEX="manindex"
if [ $# != 1 ]; then
echo Usage: $0 htmlmandir
exit 1
fi
if [ ! -d $1 ]; then
echo $1 is not a directory
exit 1
fi
cd $1
for s in $VOLLIST; do
list="`ls *.$s.html 2> /dev/null`" || : # ignore failed glob expansion
if [ X"$list" != X ]; then
file=$INDEX$s.html
rm -f $file
cat <<EOF > $file
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>X.Org Manual pages: Section $s</TITLE>
</HEAD>
<BODY BGCOLOR="#efefef" TEXT="black" LINK="blue" VLINK="#551A8B" ALINK="red">
<H1>X.Org Manual pages: Section $s</H1>
<P>
<UL>
EOF
for i in $list; do
title="`sed -e '/^[^0-9A-Za-z]/d' -e '/^$/' -e '/^Name/d' -e q $i`"
name="`echo \"$title\" | sed -e 's/ - .*//'`"
desc="`echo \"$title\" | sed -e 's/[^-]* - //' -e 's/<P>//'`"
echo "<LI><A href=\"$i\">$name</A> - $desc</LI>" >> $file
done
cat <<EOF >> $file
</UL>
<P>
</BODY>
</HTML>
EOF
fi
done
exit 0

46
imake/revpath.c Normal file
View File

@ -0,0 +1,46 @@
/*
* Copyright 1999 by The XFree86 Project, Inc.
*/
/*
* Reverse a pathname. It returns a relative path that can be used to undo
* 'cd argv[1]'.
*
* It is impossible to do this in general, but this handles the cases that
* come up in imake. Maybe imake should use an absolute path for $(TOP)
* instead of a relative path so that this problem can be avoided?
*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int
main(int argc, char *argv[])
{
int levels = 0;
char *p;
/* Silently ignore invalid usage */
if (argc != 2)
exit(0);
/* Split the path and count the levels */
p = strtok(argv[1], "/");
while (p) {
if (strcmp(p, ".") == 0)
;
else if (strcmp(p, "..") == 0)
levels--;
else
levels++;
p = strtok(NULL, "/");
}
while (levels-- > 0)
printf("../");
printf("\n");
exit(0);
}

44
imake/revpath.man Normal file
View File

@ -0,0 +1,44 @@
.TH REVPATH 1 __vendorversion__
.SH NAME
revpath \- generate a relative path that can be used to undo a change-directory
.SH SYNOPSIS
.B revpath
.I path
.SH DESCRIPTION
The
.I revpath
program prints out a relative path that is the ``reverse'' or ``inverse'' of
.IR path .
Start with two directories
.I top
and
.IR bottom ,
with the latter below the former, and
.I path
is the location of
.I bottom
relative to
.IR top .
The output of
.I revpath
is the location of
.I top
relative to
.IR bottom .
The resulting path contains a trailing `/' character when the result is
non-trivial.
If
.I path
is equivalent to `.', the resulting output is empty.
If
.I path
is invalid in some way (e.g., doesn't represent the path to a subdirectory)
the output is also empty and no error messages are ever generated.
.SH DIAGNOSTICS
There are no diagnostics. Error conditions are silently ignored, and the
exit status is always 0.
.SH BUGS
It isn't possible to reverse arbitrary relative paths.
If any path element between the two end points of
.I path
is a symbolic link, the results will probably be incorrect.

66
imake/xmkmf.cpp Normal file
View File

@ -0,0 +1,66 @@
XCOMM!/bin/sh
XCOMM make a Makefile from an Imakefile from inside or outside the sources
usage="usage: $0 [-a] [top_of_sources_pathname [current_directory]]"
configdirspec=CONFIGDIRSPEC
topdir=
curdir=.
do_all=
imake_defines=
while [ $# -gt 0 ]
do
case "$1" in
-D*)
imake_defines="$imake_defines $1"
shift
;;
-a)
do_all="yes"
shift
;;
*)
break
;;
esac
done
case $# in
0) ;;
1) topdir=$1 ;;
2) topdir=$1 curdir=$2 ;;
*) echo "$usage" 1>&2; exit 1 ;;
esac
case "$topdir" in
-*) echo "$usage" 1>&2; exit 1 ;;
esac
if [ -f Makefile ]; then
echo mv -f Makefile Makefile.bak
mv -f Makefile Makefile.bak
fi
if [ "$topdir" = "" ]; then
args="-DUseInstalled "$configdirspec
else
args="-I$topdir/config/cf -DTOPDIR=$topdir -DCURDIR=$curdir"
fi
echo imake $imake_defines $args
case "$do_all" in
yes)
imake $imake_defines $args &&
echo "make Makefiles" &&
make Makefiles &&
echo "make includes" &&
make includes &&
echo "make depend" &&
make depend
;;
*)
imake $imake_defines $args
;;
esac

79
imake/xmkmf.man Normal file
View File

@ -0,0 +1,79 @@
.\" Copyright (c) 1993, 1994, 1998 The Open Group
.\"
.\" Permission to use, copy, modify, distribute, and sell this software and its
.\" documentation for any purpose is hereby granted without fee, provided that
.\" the above copyright notice appear in all copies and that both that
.\" copyright notice and this permission notice appear in supporting
.\" documentation.
.\"
.\" The above copyright notice and this permission notice shall be included in
.\" all copies or substantial portions of the Software.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
.\" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
.\" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
.\" THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
.\" WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
.\" OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
.\" SOFTWARE.
.\"
.\" Except as contained in this notice, the name of The Open Group shall not
.\" be used in advertising or otherwise to promote the sale, use or other
.\" dealing in this Software without prior written authorization from The
.\" Open Group.
.\"
.TH XMKMF 1 __xorgversion__
.SH NAME
xmkmf \- create a Makefile from an Imakefile
.SH SYNOPSIS
.B xmkmf
[ -a ] [
.I topdir
[
.I curdir
] ]
.SH DESCRIPTION
The
.I xmkmf
command is the normal way to create a
.I Makefile
from an
.I Imakefile
shipped with third-party software.
.PP
When invoked with no arguments in a directory containing an
.I Imakefile,
the
.I imake
program is run with arguments appropriate for your system
(configured into
.I imake
when it was built) and generates a
.I Makefile.
.PP
When invoked with the
.I \-a
option,
.I xmkmf
builds the
.I Makefile
in the current directory, and then automatically executes
``make Makefiles'' (in case there are subdirectories),
``make includes'',
and ``make depend'' for you.
.PP
If a
.I topdir
is given,
.I xmkmf
assumes nothing is installed on your system and looks for files in
the build tree instead of using the installed versions. Optionally,
.I curdir
may be specified as a relative pathname from the top of the build
tree to the current directory. It is necessary to supply
.I curdir
if the current directory has subdirectories, or the
.I Makefile
will not be able to build the subdirectories.
.SH "SEE ALSO"
imake(1)

21
lndir/COPYING Normal file
View File

@ -0,0 +1,21 @@
Copyright (c) 1990, 1993, 1994, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.

301
lndir/ChangeLog Normal file
View File

@ -0,0 +1,301 @@
commit 70ac3aeac918c916fffb6b2ee09514f50beb0ce9
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Mar 7 21:50:44 2012 -0800
lndir 1.0.3
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit cc807bb858287537da97be0051318f15bf712a76
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Sep 28 14:46:18 2011 -0700
Add printf & noreturn attributes for static analysis
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 966e58a5522c56ad5144ad5fe51273f24e9e729e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Sep 28 14:43:27 2011 -0700
Add const attributes to fix gcc -Wwrite-strings warnings
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 2eb55c2ed3a0e01466cb64d2e74905461eac3c66
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 7 23:39:56 2011 -0700
config: Remove unnecessary AC_SUBST from configure.ac
PKG_CONFIG_MODULES handles AC_SUBST of the CFLAGS & LIBS variables
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 847f506047b3e7b9390f50d3b12f041cdfd1b2a3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 7 23:37:46 2011 -0700
config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS
Regroup AC statements under the Autoconf initialization section.
Regroup AM statements under the Automake initialization section.
Add missing AC_CONFIG_SRCDIR
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit e20d41e86c18cac3dfc61bd1d61a52694a40b7de
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 7 23:30:24 2011 -0700
Convert main() to use traditional argc & argv names instead of ac & av
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit da14ef5b73bd8bfd57af9ee7541ec2ae96d3d03b
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 7 23:28:27 2011 -0700
Add missing -withrevinfo flag to usage output
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 9da4c0b964f96ef8bd37cf5e3f74a86b93e890f7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Aug 13 21:11:32 2010 -0700
lndir 1.0.2
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit be233b8d31026dc7554ff0c8628df3c5ba4f1b90
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Aug 13 21:09:26 2010 -0700
Let XORG_DEFAULT_OPTIONS handle AC_PROG_CC & AC_PROG_INSTALL
Don't need to duplicate calls to them (potentially overriding
the c99 settings from the xorg-macros calls)
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 57791c8b2192afdf1e4ef335509baec654bffcf0
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Aug 13 21:04:52 2010 -0700
upgrade to util-macros 1.8 for additional man page support
Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
The value of MAN_SUBST is the same for all X.Org packages.
Use AC_PROG_SED now supplied by XORG_DEFAULT_OPTIONS
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 5a5e5a83b335f4203c927b539d4c8b6ee53719c3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Apr 16 01:25:03 2010 -0700
Man page: note that *~ is always skipped, update second list of scm subdirs
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit a0ddf1288b3fc6cf628f1ee69b585615387b5b1a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Apr 16 01:15:45 2010 -0700
Enable AC_SYS_LARGEFILE & AC_USE_SYSTEM_EXTENSIONS
Avoids stat() failures on 32-bit platforms if a file has a size
that doesn't fit in 32-bits
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit ae6ada745e48a6366cb91a5ce6692e22ad8077ae
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Apr 16 01:04:22 2010 -0700
Assume POSIX, lose support for old Minix & LynxOS
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 17f97355310d75b05bb3f7a1007ca752fe100029
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Apr 16 00:57:24 2010 -0700
Move to xorg-macros 1.4 & use INSTALL_CMD to generate INSTALL file
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
commit fb043c2097e12b0d0c6056727fd0274229601cc2
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Apr 16 01:01:22 2010 -0700
Fill in COPYING & README files
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit ba8299f042870d60da4582fa4e532e594583be96
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Apr 16 00:59:21 2010 -0700
Add standard .gitignore
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit cef8c50586903e7ac543d1a8e3f84d4a78f731a4
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Thu Oct 15 16:53:48 2009 -0700
Migrate to xorg macros 1.3 & XORG_DEFAULT_OPTIONS
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 33a3c2fc886bc9ce5a0692c6c0c78903aa122ee1
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Thu Oct 15 16:50:26 2009 -0700
Add .hg & .git to the list of known revision control subdirectories
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 853241018d75a6b40f67db61f9ea21f1c5e90641
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Thu Oct 15 16:48:13 2009 -0700
include <limits.h> to ensure INT_MAX is defined after 23bacbd6c
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 23bacbd6c71ec815f394f0a7bbc9e684b3e05438
Author: Eric Blake <ebby9@byu.net>
Date: Thu Oct 15 15:52:36 2009 -0500
Fix broken assumption where stat.st_nlink == 1
Normally, any directory has a st_nlink of at least 2 (. and ..).
On some systems, a directory's st_nlink is set to 1 where it is too
expensive to compute the correct value (e.g. remote filesystems).
Instead of treating this as a legitimate value (i.e. that the directory
contains nothing to link from), special case this and force a complete
scan of the directory's contents.
Further explanation:
http://cygwin.com/ml/cygwin/2008-06/msg00056.html
http://cygwin.com/ml/cygwin-apps/2008-08/msg00264.html
Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
commit 17eba8aca2edfadf0ec5291bcd937644e45561de
Author: James Cloos <cloos@jhcloos.com>
Date: Thu Dec 6 16:39:17 2007 -0500
Replace static ChangeLog with dist-hook to generate from git log
commit 05d8a7b32077410143398bcf979424a68e12cd5d
Author: Jeremy Huddleston <jeremy@yuffie.local>
Date: Mon Dec 3 20:06:10 2007 -0800
Use __APPLE__ instead of __DARWIN__
commit 6f5087c5d544c918d72321227f3028773c54266b
Author: Kevin E Martin <kem@kem.org>
Date: Wed Dec 21 02:30:08 2005 +0000
Update package version for X11R7 release.
commit fc895a080f7c35403e240f973c47e6aa000c6778
Author: Adam Jackson <ajax@nwnk.net>
Date: Mon Dec 19 16:36:01 2005 +0000
Stub COPYING files
commit a150dc34ab6edd48b35201e785991622617eb87d
Author: Kevin E Martin <kem@kem.org>
Date: Thu Dec 15 00:24:40 2005 +0000
Update package version number for final X11R7 release candidate.
commit ddc9aab6ae857dfe8382a0be461bb9bb1e5b3c1f
Author: Kevin E Martin <kem@kem.org>
Date: Sat Dec 10 01:53:10 2005 +0000
Initial revision.
commit 5169ab683432f97215f4895a94af4b9a372a6f01
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Wed Nov 23 22:33:07 2005 +0000
Bug #5003 <https://bugs.freedesktop.org/show_bug.cgi?id=5003> Patch #3763
<https://bugs.freedesktop.org/attachment.cgi?id=3763> Xorg code misuses
S_IF* macros
commit dedfbb8bf81f67a75e31a77b7525c372d64939c7
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Thu Jul 14 16:30:53 2005 +0000
Bug 3774 <https://bugs.freedesktop.org/show_bug.cgi?id=3774> Patch 3081
<https://bugs.freedesktop.org/attachment.cgi?id=3081> lndir.man fails
to mention .svn (Bernhard Reiter)
commit f147e94b91751af67000a29ba59d7cd94f163df6
Author: Kevin E Martin <kem@kem.org>
Date: Thu Aug 26 05:10:56 2004 +0000
Fix lndir to handle symlinks to directories correctly (Bug #1083, H.J. Lu).
Fix i810 compilation without Xinerama (Bug #1180, Simon Schubert).
commit b97ef364d7a38510efaa1fdd6f4b5aff4728173a
Author: Egbert Eich <eich@suse.de>
Date: Fri Apr 23 18:42:00 2004 +0000
Merging XORG-CURRENT into trunk
commit 48a0231fd32530bfa0266b885c644f8539bb0800
Author: Egbert Eich <eich@suse.de>
Date: Sun Mar 14 08:27:28 2004 +0000
Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
commit a93134e0964b393d1d042e0cd37fec98d8a3e7a1
Author: Egbert Eich <eich@suse.de>
Date: Wed Mar 3 12:09:38 2004 +0000
Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
commit fdf9172cf361fdd78313285c2b7f476b06e31551
Author: Egbert Eich <eich@suse.de>
Date: Thu Feb 26 13:34:16 2004 +0000
readding XFree86's cvs IDs
commit 765c1140d14b60e070c8cc6101b7582530261606
Author: Egbert Eich <eich@suse.de>
Date: Thu Feb 26 09:21:15 2004 +0000
Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
commit 1ab5861be6198294ba8115bb8a371cd85c4f92e7
Author: Egbert Eich <eich@suse.de>
Date: Thu Jan 29 08:06:33 2004 +0000
Importing vendor version xf86-012804-2330 on Thu Jan 29 00:06:33 PST 2004
commit b96620a470833dc5873d42c4f0d83d17d3f0b0c4
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Tue Nov 25 19:26:55 2003 +0000
XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
commit ba4718fc199b7132d4adba7255b34ba3ce3f3c3b
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 16:48:20 2003 +0000
XFree86 4.3.0.1
commit cf6be6ad1e554e9855fdd3d1c7e523316e120b3b
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 15:54:29 2003 +0000
R6.6 is the Xorg base-line

291
lndir/INSTALL Normal file
View File

@ -0,0 +1,291 @@
Installation Instructions
*************************
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
2006, 2007, 2008 Free Software Foundation, Inc.
This file is free documentation; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it.
Basic Installation
==================
Briefly, the shell commands `./configure; make; make install' should
configure, build, and install this package. The following
more-detailed instructions are generic; see the `README' file for
instructions specific to this package.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
those values to create a `Makefile' in each directory of the package.
It may also create one or more `.h' files containing system-dependent
definitions. Finally, it creates a shell script `config.status' that
you can run in the future to recreate the current configuration, and a
file `config.log' containing compiler output (useful mainly for
debugging `configure').
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
the results of its tests to speed up reconfiguring. Caching is
disabled by default to prevent problems with accidental use of stale
cache files.
If you need to do unusual things to compile the package, please try
to figure out how `configure' could check whether to do them, and mail
diffs or instructions to the address given in the `README' so they can
be considered for the next release. If you are using the cache, and at
some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file `configure.ac' (or `configure.in') is used to create
`configure' by a program called `autoconf'. You need `configure.ac' if
you want to change it or regenerate `configure' using a newer version
of `autoconf'.
The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system.
Running `configure' might take a while. While running, it prints
some messages telling which features it is checking for.
2. Type `make' to compile the package.
3. Optionally, type `make check' to run any self-tests that come with
the package.
4. Type `make install' to install the programs and any data files and
documentation.
5. You can remove the program binaries and object files from the
source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is
also a `make maintainer-clean' target, but that is intended mainly
for the package's developers. If you use it, you may have to get
all sorts of other programs in order to regenerate files that came
with the distribution.
6. Often, you can also type `make uninstall' to remove the installed
files again.
Compilers and Options
=====================
Some systems require unusual options for compilation or linking that
the `configure' script does not know about. Run `./configure --help'
for details on some of the pertinent environment variables.
You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here
is an example:
./configure CC=c99 CFLAGS=-g LIBS=-lposix
*Note Defining Variables::, for more details.
Compiling For Multiple Architectures
====================================
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'.
With a non-GNU `make', it is safer to compile the package for one
architecture at a time in the source code directory. After you have
installed the package for one architecture, use `make distclean' before
reconfiguring for another architecture.
On MacOS X 10.5 and later systems, you can create libraries and
executables that work on multiple system types--known as "fat" or
"universal" binaries--by specifying multiple `-arch' options to the
compiler but only a single `-arch' option to the preprocessor. Like
this:
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CPP="gcc -E" CXXCPP="g++ -E"
This is not guaranteed to produce working output in all cases, you
may have to build one architecture at a time and combine the results
using the `lipo' tool if you have problems.
Installation Names
==================
By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving
`configure' the option `--prefix=PREFIX'.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
pass the option `--exec-prefix=PREFIX' to `configure', the package uses
PREFIX as the prefix for installing programs and libraries.
Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them.
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
Optional Features
=================
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
`README' should mention any `--enable-' and `--with-' options that the
package recognizes.
For packages that use the X Window System, `configure' can usually
find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
Particular systems
==================
On HP-UX, the default C compiler is not ANSI C compatible. If GNU
CC is not installed, it is recommended to use the following options in
order to use an ANSI C compiler:
./configure CC="cc -Ae"
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
a workaround. If GNU CC is not installed, it is therefore recommended
to try
./configure CC="cc"
and if that doesn't work, try
./configure CC="cc -nodtk"
Specifying the System Type
==========================
There may be some features `configure' cannot figure out
automatically, but needs to determine by the type of machine the package
will run on. Usually, assuming the package is built to be run on the
_same_ architectures, `configure' can figure that out, but if it prints
a message saying it cannot guess the machine type, give it the
`--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form:
CPU-COMPANY-SYSTEM
where SYSTEM can have one of these forms:
OS KERNEL-OS
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
use the option `--target=TYPE' to select the type of system they will
produce code for.
If you want to _use_ a cross compiler, that generates code for a
platform different from the build platform, you should specify the
"host" platform (i.e., that on which the generated programs will
eventually be run) with `--host=TYPE'.
Sharing Defaults
================
If you want to set default values for `configure' scripts to share,
you can create a site shell script called `config.site' that gives
default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script.
Defining Variables
==================
Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script).
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
an Autoconf bug. Until the bug is fixed you can use this workaround:
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
`configure' Invocation
======================
`configure' recognizes the following options to control how it
operates.
`--help'
`-h'
Print a summary of all of the options to `configure', and exit.
`--help=short'
`--help=recursive'
Print a summary of the options unique to this package's
`configure', and exit. The `short' variant lists options used
only in the top level, while the `recursive' variant lists options
also present in any nested packages.
`--version'
`-V'
Print the version of Autoconf used to generate the `configure'
script, and exit.
`--cache-file=FILE'
Enable the cache: use and save the results of the tests in FILE,
traditionally `config.cache'. FILE defaults to `/dev/null' to
disable caching.
`--config-cache'
`-C'
Alias for `--cache-file=config.cache'.
`--quiet'
`--silent'
`-q'
Do not print messages saying which checks are being made. To
suppress all normal output, redirect it to `/dev/null' (any error
messages will still be shown).
`--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
`--prefix=DIR'
Use DIR as the installation prefix. *Note Installation Names::
for more details, including other options available for fine-tuning
the installation locations.
`--no-create'
`-n'
Run the configure checks, but stop before creating any output
files.
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.

57
lndir/Makefile.am Normal file
View File

@ -0,0 +1,57 @@
#
# Copyright 2005 Red Hat, Inc.
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of Red Hat not be used in
# advertising or publicity pertaining to distribution of the software without
# specific, written prior permission. Red Hat makes no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
# RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
# EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
bin_PROGRAMS = lndir
AM_CFLAGS = $(CWARNFLAGS) $(XPROTO_CFLAGS)
lndir_SOURCES = lndir.c
# Man page
appmandir = $(APP_MAN_DIR)
appman_PRE = lndir.man
appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
CLEANFILES = $(appman_DATA)
# Strings to replace in man pages
XORGRELSTRING = @PACKAGE_STRING@
XORGMANNAME = X Version 11
SUFFIXES = .$(APP_MAN_SUFFIX) .man
# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
.man.$(APP_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
EXTRA_DIST = $(appman_PRE)
MAINTAINERCLEANFILES = ChangeLog INSTALL
.PHONY: ChangeLog INSTALL
INSTALL:
$(INSTALL_CMD)
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog INSTALL

756
lndir/Makefile.in Normal file
View File

@ -0,0 +1,756 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
#
# Copyright 2005 Red Hat, Inc.
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of Red Hat not be used in
# advertising or publicity pertaining to distribution of the software without
# specific, written prior permission. Red Hat makes no
# representations about the suitability of this software for any purpose. It
# is provided "as is" without express or implied warranty.
#
# RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
# EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
bin_PROGRAMS = lndir$(EXEEXT)
subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(top_srcdir)/configure COPYING ChangeLog INSTALL config.guess \
config.sub depcomp install-sh missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(appmandir)"
PROGRAMS = $(bin_PROGRAMS)
am_lndir_OBJECTS = lndir.$(OBJEXT)
lndir_OBJECTS = $(am_lndir_OBJECTS)
lndir_LDADD = $(LDADD)
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_$(V))
am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
am__v_CC_0 = @echo " CC " $@;
AM_V_at = $(am__v_at_$(V))
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
am__v_at_0 = @
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CCLD = $(am__v_CCLD_$(V))
am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
am__v_CCLD_0 = @echo " CCLD " $@;
AM_V_GEN = $(am__v_GEN_$(V))
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
am__v_GEN_0 = @echo " GEN " $@;
SOURCES = $(lndir_SOURCES)
DIST_SOURCES = $(lndir_SOURCES)
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
DATA = $(appman_DATA)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
{ test ! -d "$(distdir)" \
|| { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -fr "$(distdir)"; }; }
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
APP_MAN_DIR = @APP_MAN_DIR@
APP_MAN_SUFFIX = @APP_MAN_SUFFIX@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BASE_CFLAGS = @BASE_CFLAGS@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CHANGELOG_CMD = @CHANGELOG_CMD@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CWARNFLAGS = @CWARNFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FILE_MAN_DIR = @FILE_MAN_DIR@
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_CMD = @INSTALL_CMD@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_MAN_DIR = @LIB_MAN_DIR@
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MAN_SUBSTS = @MAN_SUBSTS@
MISC_MAN_DIR = @MISC_MAN_DIR@
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRICT_CFLAGS = @STRICT_CFLAGS@
STRIP = @STRIP@
VERSION = @VERSION@
XORG_MAN_PAGE = @XORG_MAN_PAGE@
XPROTO_CFLAGS = @XPROTO_CFLAGS@
XPROTO_LIBS = @XPROTO_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AM_CFLAGS = $(CWARNFLAGS) $(XPROTO_CFLAGS)
lndir_SOURCES = lndir.c
# Man page
appmandir = $(APP_MAN_DIR)
appman_PRE = lndir.man
appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
CLEANFILES = $(appman_DATA)
# Strings to replace in man pages
XORGRELSTRING = @PACKAGE_STRING@
XORGMANNAME = X Version 11
SUFFIXES = .$(APP_MAN_SUFFIX) .man
EXTRA_DIST = $(appman_PRE)
MAINTAINERCLEANFILES = ChangeLog INSTALL
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
.SUFFIXES: .$(APP_MAN_SUFFIX) .man .c .o .obj
am--refresh:
@:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
$(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
echo ' $(SHELL) ./config.status'; \
$(SHELL) ./config.status;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
config.h: stamp-h1
@if test ! -f $@; then \
rm -f stamp-h1; \
$(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
else :; fi
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
@rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status config.h
$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1
touch $@
distclean-hdr:
-rm -f config.h stamp-h1
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
then echo "$$p"; echo "$$p"; else :; fi; \
done | \
sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) files[d] = files[d] " " $$1; \
else { print "f", $$3 "/" $$4, $$1; } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
} \
; done
uninstall-binPROGRAMS:
@$(NORMAL_UNINSTALL)
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-e 's/$$/$(EXEEXT)/' `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
clean-binPROGRAMS:
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
lndir$(EXEEXT): $(lndir_OBJECTS) $(lndir_DEPENDENCIES)
@rm -f lndir$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(lndir_OBJECTS) $(lndir_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lndir.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-appmanDATA: $(appman_DATA)
@$(NORMAL_INSTALL)
test -z "$(appmandir)" || $(MKDIR_P) "$(DESTDIR)$(appmandir)"
@list='$(appman_DATA)'; test -n "$(appmandir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(appmandir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(appmandir)" || exit $$?; \
done
uninstall-appmanDATA:
@$(NORMAL_UNINSTALL)
@list='$(appman_DATA)'; test -n "$(appmandir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(appmandir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(appmandir)" && rm -f $$files
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
$(am__remove_distdir)
test -d "$(distdir)" || mkdir "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$(top_distdir)" distdir="$(distdir)" \
dist-hook
-test -n "$(am__skip_mode_fix)" \
|| find "$(distdir)" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
dist-lzma: distdir
tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
$(am__remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
$(am__remove_distdir)
dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__remove_distdir)
dist-shar: distdir
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
$(am__remove_distdir)
dist dist-all: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lzma*) \
lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
chmod -R a-w $(distdir); chmod a+w $(distdir)
mkdir $(distdir)/_build
mkdir $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
$(DISTCHECK_CONFIGURE_FLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
distuninstallcheck \
&& chmod -R a-w "$$dc_install_base" \
&& ({ \
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
} || { rm -rf "$$dc_destdir"; exit 1; }) \
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
&& cd "$$am__cwd" \
|| exit 1
$(am__remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
@$(am__cd) '$(distuninstallcheck_dir)' \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
fi ; \
$(distuninstallcheck_listfiles) ; \
exit 1; } >&2
distcleancheck: distclean
@if test '$(srcdir)' = . ; then \
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
exit 1 ; \
fi
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left in build directory after distclean:" ; \
$(distcleancheck_listfiles) ; \
exit 1; } >&2
check-am: all-am
check: check-am
all-am: Makefile $(PROGRAMS) $(DATA) config.h
installdirs:
for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(appmandir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
distclean: distclean-am
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-hdr distclean-tags
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-appmanDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-binPROGRAMS
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-appmanDATA uninstall-binPROGRAMS
.MAKE: all install-am install-strip
.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \
clean-binPROGRAMS clean-generic ctags dist dist-all dist-bzip2 \
dist-gzip dist-hook dist-lzma dist-shar dist-tarZ dist-xz \
dist-zip distcheck distclean distclean-compile \
distclean-generic distclean-hdr distclean-tags distcleancheck \
distdir distuninstallcheck dvi dvi-am html html-am info \
info-am install install-am install-appmanDATA \
install-binPROGRAMS install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
tags uninstall uninstall-am uninstall-appmanDATA \
uninstall-binPROGRAMS
# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
.man.$(APP_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
.PHONY: ChangeLog INSTALL
INSTALL:
$(INSTALL_CMD)
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog INSTALL
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

25
lndir/README Normal file
View File

@ -0,0 +1,25 @@
lndir - create a shadow directory of symbolic links to another directory tree
All questions regarding this software should be directed at the
Xorg mailing list:
http://lists.freedesktop.org/mailman/listinfo/xorg
Please submit bug reports to the Xorg bugzilla:
https://bugs.freedesktop.org/enter_bug.cgi?product=xorg
The master development code repository can be found at:
git://anongit.freedesktop.org/git/xorg/util/lndir
http://cgit.freedesktop.org/xorg/util/lndir
For patch submission instructions, see:
http://www.x.org/wiki/Development/Documentation/SubmittingPatches
For more information on the git code manager, see:
http://wiki.x.org/wiki/GitPage

2986
lndir/aclocal.m4 vendored Normal file

File diff suppressed because it is too large Load Diff

1505
lndir/config.guess vendored Normal file

File diff suppressed because it is too large Load Diff

102
lndir/config.h.in Normal file
View File

@ -0,0 +1,102 @@
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Major version of this package */
#undef PACKAGE_VERSION_MAJOR
/* Minor version of this package */
#undef PACKAGE_VERSION_MINOR
/* Patch version of this package */
#undef PACKAGE_VERSION_PATCHLEVEL
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
/* Enable threading extensions on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
/* Enable extensions on HP NonStop. */
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
#endif
/* Version number of package */
#undef VERSION
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
/* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES
/* Define to 1 if on MINIX. */
#undef _MINIX
/* Define to 2 if the system does not provide POSIX.1 features except with
this defined. */
#undef _POSIX_1_SOURCE
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE

1739
lndir/config.sub vendored Normal file

File diff suppressed because it is too large Load Diff

12172
lndir/configure vendored Executable file

File diff suppressed because it is too large Load Diff

48
lndir/configure.ac Normal file
View File

@ -0,0 +1,48 @@
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, and that the name of Red Hat not be used in
dnl advertising or publicity pertaining to distribution of the software without
dnl specific, written prior permission. Red Hat makes no
dnl representations about the suitability of this software for any purpose. It
dnl is provided "as is" without express or implied warranty.
dnl
dnl RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
dnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
dnl EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
dnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
dnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
dnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
dnl PERFORMANCE OF THIS SOFTWARE.
dnl
dnl Process this file with autoconf to create configure.
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([lndir], [1.0.3],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [lndir])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h])
AC_USE_SYSTEM_EXTENSIONS
# Initialize Automake
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
m4_ifndef([XORG_MACROS_VERSION],
[m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
# Avoid stat() failures if a file has a size that doesn't fit in 32-bits
AC_SYS_LARGEFILE
# Checks for pkg-config packages
PKG_CHECK_MODULES(XPROTO, xproto >= 7.0.17)
AC_OUTPUT([Makefile])

630
lndir/depcomp Executable file
View File

@ -0,0 +1,630 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2009-04-28.21; # UTC
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
# Software Foundation, Inc.
# 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, 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, see <http://www.gnu.org/licenses/>.
# 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.
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
case $1 in
'')
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
Environment variables:
depmode Dependency tracking mode.
source Source file read by `PROGRAMS ARGS'.
object Object file output by `PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputing dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "depcomp $scriptversion"
exit $?
;;
esac
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
# Some modes work just like other modes, but use different flags. We
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write. Note that we *cannot* use a case
# here, because this file can only contain one case statement.
if test "$depmode" = hp; then
# HP compiler uses -M and no extra arg.
gccflag=-M
depmode=gcc
fi
if test "$depmode" = dashXmstdout; then
# This is just like dashmstdout with a different argument.
dashmflag=-xM
depmode=dashmstdout
fi
cygpath_u="cygpath -u -f -"
if test "$depmode" = msvcmsys; then
# This is just like msvisualcpp but w/o cygpath translation.
# Just convert the backslash-escaped backslashes to single forward
# slashes to satisfy depend.m4
cygpath_u="sed s,\\\\\\\\,/,g"
depmode=msvisualcpp
fi
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
## the command line argument order; so add the flags where they
## appear in depend2.am. Note that the slowdown incurred here
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
for arg
do
case $arg in
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
*) set fnord "$@" "$arg" ;;
esac
shift # fnord
shift # $arg
done
"$@"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
mv "$tmpdepfile" "$depfile"
;;
gcc)
## There are various ways to get dependency output from gcc. Here's
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## up in a subdir. Having to rename by hand is ugly.
## (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
## -MM, not -M (despite what the docs say).
## - Using -M directly means running the compiler twice (even worse
## than renaming).
if test -z "$gccflag"; then
gccflag=-MD,
fi
"$@" -Wp,"$gccflag$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
## The second -e expression handles DOS-style file names with drive letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
## This next piece of magic avoids the `deleted header file' problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
tr ' ' '
' < "$tmpdepfile" |
## Some versions of gcc put a space before the `:'. On the theory
## that the space means something, we add a space to the output as
## well.
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
sgi)
if test "$libtool" = yes; then
"$@" "-Wp,-MDupdate,$tmpdepfile"
else
"$@" -MDupdate "$tmpdepfile"
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
echo "$object : \\" > "$depfile"
# Clip off the initial element (the dependent). Don't try to be
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
# the IRIX cc adds comments like `#:fec' to the end of the
# dependency line.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
tr '
' ' ' >> "$depfile"
echo >> "$depfile"
# The second pass generates a dummy entry for each header file.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
# "include basename.Plo" scheme.
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
aix)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
# current directory. Also, the AIX compiler puts `$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then
tmpdepfile1=$dir$base.u
tmpdepfile2=$base.u
tmpdepfile3=$dir.libs/$base.u
"$@" -Wc,-M
else
tmpdepfile1=$dir$base.u
tmpdepfile2=$dir$base.u
tmpdepfile3=$dir$base.u
"$@" -M
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
# Each line is of the form `foo.o: dependent.h'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
# That's a tab and a space in the [].
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
# "include basename.Plo" scheme.
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
icc)
# Intel's C compiler understands `-MD -MF file'. However on
# icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
# ICC 7.0 will fill foo.d with something like
# foo.o: sub/foo.c
# foo.o: sub/foo.h
# which is wrong. We want:
# sub/foo.o: sub/foo.c
# sub/foo.o: sub/foo.h
# sub/foo.c:
# sub/foo.h:
# ICC 7.1 will output
# foo.o: sub/foo.c sub/foo.h
# and will wrap long lines using \ :
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
"$@" -MD -MF "$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
# Each line is of the form `foo.o: dependent.h',
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process this invocation
# correctly. Breaking it into two sed invocations is a workaround.
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp2)
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
# compilers, which have integrated preprocessors. The correct option
# to use with these is +Maked; it writes dependencies to a file named
# 'foo.d', which lands next to the object file, wherever that
# happens to be.
# Much of this is similar to the tru64 case; see comments there.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir.libs/$base.d
"$@" -Wc,+Maked
else
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir$base.d
"$@" +Maked
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile1" "$tmpdepfile2"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
# Add `dependent.h:' lines.
sed -ne '2,${
s/^ *//
s/ \\*$//
s/$/:/
p
}' "$tmpdepfile" >> "$depfile"
else
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile" "$tmpdepfile2"
;;
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# dependencies in `foo.d' instead, so we check for that too.
# Subdirectories are respected.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then
# With Tru64 cc, shared objects can also be used to make a
# static library. This mechanism is used in libtool 1.4 series to
# handle both shared and static libraries in a single compilation.
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
#
# With libtool 1.5 this exception was removed, and libtool now
# generates 2 separate objects for the 2 libraries. These two
# compilations output dependencies in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
# automatically cleaned when .libs/ is deleted, while ignoring
# the former would cause a distcleancheck panic.
tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
tmpdepfile2=$dir$base.o.d # libtool 1.5
tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
"$@" -Wc,-MD
else
tmpdepfile1=$dir$base.o.d
tmpdepfile2=$dir$base.d
tmpdepfile3=$dir$base.d
tmpdepfile4=$dir$base.d
"$@" -MD
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
# That's a tab and a space in the [].
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
#nosideeffect)
# This comment above is used by automake to tell side-effect
# dependency tracking mechanisms from slower ones.
dashmstdout)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
test -z "$dashmflag" && dashmflag=-M
# Require at least two characters before searching for `:'
# in the target name. This is to cope with DOS-style filenames:
# a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
"$@" $dashmflag |
sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
tr ' ' '
' < "$tmpdepfile" | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
dashXmstdout)
# This case only exists to satisfy depend.m4. It is never actually
# run, as this mode is specially recognized in the preamble.
exit 1
;;
makedepend)
"$@" || exit $?
# Remove any Libtool call
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# X makedepend
shift
cleared=no eat=no
for arg
do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
if test $eat = yes; then
eat=no
continue
fi
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
-arch)
eat=yes ;;
-*|$object)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
obj_suffix=`echo "$object" | sed 's/^.*\././'`
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
sed '1,2d' "$tmpdepfile" | tr ' ' '
' | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile" "$tmpdepfile".bak
;;
cpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
"$@" -E |
sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
sed '$ s: \\$::' > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
cat < "$tmpdepfile" >> "$depfile"
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
IFS=" "
for arg
do
case "$arg" in
-o)
shift
;;
$object)
shift
;;
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
shift
;;
*)
set fnord "$@" "$arg"
shift
shift
;;
esac
done
"$@" -E 2>/dev/null |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
echo " " >> "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvcmsys)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
none)
exec "$@"
;;
*)
echo "Unknown depmode $depmode" 1>&2
exit 1
;;
esac
exit 0
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

520
lndir/install-sh Executable file
View File

@ -0,0 +1,520 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2009-04-28.21; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch.
nl='
'
IFS=" "" $nl"
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit=${DOITPROG-}
if test -z "$doit"; then
doit_exec=exec
else
doit_exec=$doit
fi
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
chgrpprog=${CHGRPPROG-chgrp}
chmodprog=${CHMODPROG-chmod}
chownprog=${CHOWNPROG-chown}
cmpprog=${CMPPROG-cmp}
cpprog=${CPPROG-cp}
mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
posix_glob='?'
initialize_posix_glob='
test "$posix_glob" != "?" || {
if (set -f) 2>/dev/null; then
posix_glob=
else
posix_glob=:
fi
}
'
posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
mvcmd=$mvprog
rmcmd="$rmprog -f"
stripcmd=
src=
dst=
dir_arg=
dst_arg=
copy_on_change=false
no_target_directory=
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--help display this help and exit.
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
"
while test $# -ne 0; do
case $1 in
-c) ;;
-C) copy_on_change=true;;
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
case $mode in
*' '* | *' '* | *'
'* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2
exit 1;;
esac
shift;;
-o) chowncmd="$chownprog $2"
shift;;
-s) stripcmd=$stripprog;;
-t) dst_arg=$2
shift;;
-T) no_target_directory=true;;
--version) echo "$0 $scriptversion"; exit $?;;
--) shift
break;;
-*) echo "$0: invalid option: $1" >&2
exit 1;;
*) break;;
esac
shift
done
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dst_arg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dst_arg"
shift # fnord
fi
shift # arg
dst_arg=$arg
done
fi
if test $# -eq 0; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call `install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
if test -z "$dir_arg"; then
trap '(exit $?); exit' 1 2 13 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
case $mode in
# Optimize common cases.
*644) cp_umask=133;;
*755) cp_umask=22;;
*[0-7])
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
fi
for src
do
# Protect names starting with `-'.
case $src in
-*) src=./$src;;
esac
if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dst_arg
# Protect names starting with `-'.
case $dst in
-*) dst=./$dst;;
esac
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test -n "$no_target_directory"; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
# Prefer dirname, but fall back on a substitute if dirname fails.
dstdir=`
(dirname "$dst") 2>/dev/null ||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$dst" : 'X\(//\)[^/]' \| \
X"$dst" : 'X\(//\)$' \| \
X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
echo X"$dst" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'
`
test -d "$dstdir"
dstdir_status=$?
fi
fi
obsolete_mkdir_used=false
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
*[0-7])
mkdir_umask=`expr $umask + 22 \
- $umask % 100 % 40 + $umask % 20 \
- $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
else
mkdir_mode=
fi
posix_mkdir=false
case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
if (umask $mkdir_umask &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writeable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/d" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
fi
trap '' 0;;
esac;;
esac
if
$posix_mkdir && (
umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
# The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
-*) prefix='./';;
*) prefix='';;
esac
eval "$initialize_posix_glob"
oIFS=$IFS
IFS=/
$posix_glob set -f
set fnord $dstdir
shift
$posix_glob set +f
IFS=$oIFS
prefixes=
for d
do
test -z "$d" && continue
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
else
case $prefix in
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
*) qprefix=$prefix;;
esac
prefixes="$prefixes '$qprefix'"
fi
fi
prefix=$prefix/
done
if test -n "$prefixes"; then
# Don't fail if two instances are running concurrently.
(umask $mkdir_umask &&
eval "\$doit_exec \$mkdirprog $prefixes") ||
test -d "$dstdir" || exit 1
obsolete_mkdir_used=true
fi
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
eval "$initialize_posix_glob" &&
$posix_glob set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
$posix_glob set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
trap '' 0
fi
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

376
lndir/lndir.c Normal file
View File

@ -0,0 +1,376 @@
/* $Xorg: lndir.c,v 1.5 2001/02/09 02:03:17 xorgcvs Exp $ */
/* Create shadow link tree (after X11R4 script of the same name)
Mark Reinhold (mbr@lcs.mit.edu)/3 January 1990 */
/*
Copyright (c) 1990, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
*/
/* $XFree86: xc/config/util/lndir.c,v 3.18 2003/06/24 15:44:45 eich Exp $ */
/* From the original /bin/sh script:
Used to create a copy of the a directory tree that has links for all
non-directories (except, by default, those named BitKeeper, .git, .hg,
RCS, SCCS, .svn, CVS or CVS.adm).
If you are building the distribution on more than one machine,
you should use this technique.
If your master sources are located in /usr/local/src/X and you would like
your link tree to be in /usr/local/src/new-X, do the following:
% mkdir /usr/local/src/new-X
% cd /usr/local/src/new-X
% lndir ../X
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include <X11/Xos.h>
#include <X11/Xfuncproto.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <limits.h>
#include <sys/param.h>
#include <errno.h>
#include <dirent.h>
#ifndef MAXPATHLEN
#define MAXPATHLEN 2048
#endif
#include <stdarg.h>
int silent = 0; /* -silent */
int ignore_links = 0; /* -ignorelinks */
int with_revinfo = 0; /* -withrevinfo */
char *rcurdir;
char *curdir;
static void _X_ATTRIBUTE_PRINTF(2,3) _X_NORETURN
quit (int code, const char * fmt, ...)
{
va_list args;
va_start(args, fmt);
vfprintf (stderr, fmt, args);
va_end(args);
putc ('\n', stderr);
exit (code);
}
static void _X_NORETURN
quiterr (int code, const char *s)
{
perror (s);
exit (code);
}
static void _X_ATTRIBUTE_PRINTF(1,2)
msg (const char * fmt, ...)
{
va_list args;
if (curdir) {
fprintf (stderr, "%s:\n", curdir);
curdir = 0;
}
va_start(args, fmt);
vfprintf (stderr, fmt, args);
va_end(args);
putc ('\n', stderr);
}
static void
mperror (char *s)
{
if (curdir) {
fprintf (stderr, "%s:\n", curdir);
curdir = 0;
}
perror (s);
}
static int
equivalent(char *lname, char *rname, char **p)
{
char *s;
if (!strcmp(lname, rname))
return 1;
for (s = lname; *s && (s = strchr(s, '/')); s++) {
while (s[1] == '/') {
strcpy(s+1, s+2);
if (*p) (*p)--;
}
}
return !strcmp(lname, rname);
}
/* Recursively create symbolic links from the current directory to the "from"
directory. Assumes that files described by fs and ts are directories. */
static int
dodir (const char *fn, /* name of "from" directory, either absolute or
relative to cwd */
struct stat *fs,
struct stat *ts, /* stats for the "from" directory and cwd */
int rel) /* if true, prepend "../" to fn before using */
{
DIR *df;
struct dirent *dp;
char buf[MAXPATHLEN + 1], *p;
char symbuf[MAXPATHLEN + 1];
char basesym[MAXPATHLEN + 1];
struct stat sb, sc;
int n_dirs;
int symlen;
int basesymlen = -1;
char *ocurdir;
if ((fs->st_dev == ts->st_dev) && (fs->st_ino == ts->st_ino)) {
msg ("%s: From and to directories are identical!", fn);
return 1;
}
if (rel)
strcpy (buf, "../");
else
buf[0] = '\0';
strcat (buf, fn);
if (!(df = opendir (buf))) {
msg ("%s: Cannot opendir", buf);
return 1;
}
p = buf + strlen (buf);
if (*(p - 1) != '/')
*p++ = '/';
n_dirs = fs->st_nlink;
if (n_dirs == 1)
n_dirs = INT_MAX;
while ((dp = readdir (df))) {
if (dp->d_name[strlen(dp->d_name) - 1] == '~')
continue;
#ifdef __APPLE__
/* Ignore these Mac OS X Finder data files */
if (!strcmp(dp->d_name, ".DS_Store") ||
!strcmp(dp->d_name, "._.DS_Store"))
continue;
#endif
strcpy (p, dp->d_name);
if (n_dirs > 0) {
if (lstat (buf, &sb) < 0) {
mperror (buf);
continue;
}
if (S_ISDIR(sb.st_mode))
{
/* directory */
n_dirs--;
if (dp->d_name[0] == '.' &&
(dp->d_name[1] == '\0' || (dp->d_name[1] == '.' &&
dp->d_name[2] == '\0')))
continue;
if (!with_revinfo) {
if (!strcmp (dp->d_name, ".git"))
continue;
if (!strcmp (dp->d_name, ".hg"))
continue;
if (!strcmp (dp->d_name, "BitKeeper"))
continue;
if (!strcmp (dp->d_name, "RCS"))
continue;
if (!strcmp (dp->d_name, "SCCS"))
continue;
if (!strcmp (dp->d_name, "CVS"))
continue;
if (!strcmp (dp->d_name, "CVS.adm"))
continue;
if (!strcmp (dp->d_name, ".svn"))
continue;
}
ocurdir = rcurdir;
rcurdir = buf;
curdir = silent ? buf : (char *)0;
if (!silent)
printf ("%s:\n", buf);
if ((stat (dp->d_name, &sc) < 0) && (errno == ENOENT)) {
if (mkdir (dp->d_name, 0777) < 0 ||
stat (dp->d_name, &sc) < 0) {
mperror (dp->d_name);
curdir = rcurdir = ocurdir;
continue;
}
}
if (readlink (dp->d_name, symbuf, sizeof(symbuf) - 1) >= 0) {
msg ("%s: is a link instead of a directory", dp->d_name);
curdir = rcurdir = ocurdir;
continue;
}
if (chdir (dp->d_name) < 0) {
mperror (dp->d_name);
curdir = rcurdir = ocurdir;
continue;
}
dodir (buf, &sb, &sc, (buf[0] != '/'));
if (chdir ("..") < 0)
quiterr (1, "..");
curdir = rcurdir = ocurdir;
continue;
}
}
/* non-directory */
symlen = readlink (dp->d_name, symbuf, sizeof(symbuf) - 1);
if (symlen >= 0)
symbuf[symlen] = '\0';
/* The option to ignore links exists mostly because
checking for them slows us down by 10-20%.
But it is off by default because this really is a useful check. */
if (!ignore_links) {
/* see if the file in the base tree was a symlink */
basesymlen = readlink(buf, basesym, sizeof(basesym) - 1);
if (basesymlen >= 0)
basesym[basesymlen] = '\0';
}
if (symlen >= 0) {
/* Link exists in new tree. Print message if it doesn't match. */
if (!equivalent (basesymlen>=0 ? basesym : buf, symbuf,
basesymlen>=0 ? (char **) 0 : &p))
msg ("%s: %s", dp->d_name, symbuf);
} else {
char *sympath;
if (basesymlen>=0) {
if ((buf[0] == '.') && (buf[1] == '.') && (buf[2] == '/') &&
(basesym[0] == '.') && (basesym[1] == '.') &&
(basesym[2] == '/')) {
/* It becomes very tricky here. We have
../../bar/foo symlinked to ../xxx/yyy. We
can't just use ../xxx/yyy. We have to use
../../bar/foo/../xxx/yyy. */
int i;
char *start, *end;
strcpy (symbuf, buf);
/* Find the first char after "../" in symbuf. */
start = symbuf;
do {
start += 3;
} while ((start[0] == '.') && (start[1] == '.') &&
(start[2] == '/'));
/* Then try to eliminate "../"s in basesym. */
i = 0;
end = strrchr (symbuf, '/');
if (start < end) {
do {
i += 3;
end--;
while ((*end != '/') && (end != start))
end--;
if (end == start)
break;
} while ((basesym[i] == '.') &&
(basesym[i + 1] == '.') &&
(basesym[i + 2] == '/'));
}
if (*end == '/')
end++;
strcpy (end, &basesym[i]);
sympath = symbuf;
}
else
sympath = basesym;
}
else
sympath = buf;
if (symlink (sympath, dp->d_name) < 0)
mperror (dp->d_name);
}
}
closedir (df);
return 0;
}
int
main (int argc, char *argv[])
{
char *prog_name = argv[0];
const char *fn, *tn;
struct stat fs, ts;
while (++argv, --argc) {
if (strcmp(*argv, "-silent") == 0)
silent = 1;
else if (strcmp(*argv, "-ignorelinks") == 0)
ignore_links = 1;
else if (strcmp(*argv, "-withrevinfo") == 0)
with_revinfo = 1;
else if (strcmp(*argv, "--") == 0) {
++argv, --argc;
break;
}
else
break;
}
if (argc < 1 || argc > 2)
quit (1,
"usage: %s [-silent] [-ignorelinks] [-withrevinfo] fromdir [todir]",
prog_name);
fn = argv[0];
if (argc == 2)
tn = argv[1];
else
tn = ".";
/* to directory */
if (stat (tn, &ts) < 0)
quiterr (1, tn);
if (!(S_ISDIR(ts.st_mode)))
quit (2, "%s: Not a directory", tn);
if (chdir (tn) < 0)
quiterr (1, tn);
/* from directory */
if (stat (fn, &fs) < 0)
quiterr (1, fn);
if (!(S_ISDIR(fs.st_mode)))
quit (2, "%s: Not a directory", fn);
exit (dodir (fn, &fs, &ts, 0));
}

123
lndir/lndir.man Normal file
View File

@ -0,0 +1,123 @@
.\" $Xorg: lndir.man,v 1.4 2001/02/09 02:03:17 xorgcvs Exp $
.\"
.\" Copyright (c) 1993, 1994, 1998 The Open Group
.\"
.\" Permission to use, copy, modify, distribute, and sell this software and its
.\" documentation for any purpose is hereby granted without fee, provided that
.\" the above copyright notice appear in all copies and that both that
.\" copyright notice and this permission notice appear in supporting
.\" documentation.
.\"
.\" The above copyright notice and this permission notice shall be
.\" included in all copies or substantial portions of the Software.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
.\" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
.\" IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
.\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
.\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
.\" OTHER DEALINGS IN THE SOFTWARE.
.\"
.\" Except as contained in this notice, the name of The Open Group shall
.\" not be used in advertising or otherwise to promote the sale, use or
.\" other dealings in this Software without prior written authorization
.\" from The Open Group.
.\"
.\"
.\" $XFree86: xc/config/util/lndir.man,v 1.3tsi Exp $
.\"
.TH LNDIR 1 __xorgversion__
.SH NAME
lndir \- create a shadow directory of symbolic links to another directory tree
.SH SYNOPSIS
.B lndir
[
.B \-silent
] [
.B \-ignorelinks
] [
.B \-withrevinfo
]
.I \|fromdir\|
[
.I todir
]
.SH DESCRIPTION
The
.I lndir
program makes a shadow copy
.I todir
of a directory tree
.I fromdir,
except that the shadow is not
populated with real files but instead with symbolic links pointing at
the real files in the
.I fromdir
directory tree. This is usually useful for maintaining source code for
different machine architectures. You create a shadow directory
containing links to the real source, which you will have usually
mounted from a remote machine. You can build in the shadow tree, and
the object files will be in the shadow directory, while the
source files in the shadow directory are just symlinks to the real
files.
.PP
This scheme has the advantage that if you update the source, you need not
propagate the change to the other architectures by hand, since all
source in all shadow directories are symlinks to the real thing: just cd
to the shadow directory and recompile away.
.PP
The
.I todir
argument is optional and defaults to the current directory. The
.I fromdir
argument may be relative (e.g., ../src) and is relative to
.I todir
(not the current directory).
.PP
.\" CVS.adm is used by the Concurrent Versions System.
Note that BitKeeper, CVS, CVS.adm, .git, .hg, RCS, SCCS, and .svn directories
are shadowed only if the \fB\-withrevinfo\fP flag is specified.
Files with names ending in \fI~\fP are never shadowed.
.PP
If you add files, simply run
.I lndir
again. New files will be silently added. Old files will be
checked that they have the correct link.
.PP
Deleting files is a more painful problem; the symlinks will
just point into never never land.
.PP
If a file in \fIfromdir\fP is a symbolic link, \fIlndir\fP will make
the same link in \fItodir\fP rather than making a link back to the
(symbolic link) entry in \fIfromdir.\fP The \fB\-ignorelinks\fP flag
changes this behavior.
.SH OPTIONS
.IP \-silent
Normally \fIlndir\fP outputs the name of each subdirectory as it
descends into it. The \fB\-silent\fP option suppresses these status
messages.
.IP \-ignorelinks
Causes the program to not treat symbolic links in \fIfromdir\fP
specially. The link created in \fItodir\fP will point back to the
corresponding (symbolic link) file in \fIfromdir\fP.
If the link is to a directory, this is almost certainly the wrong thing.
.IP
This option exists mostly to emulate the behavior the C version of
\fIlndir\fP had in X11R6. Its use is not recommended.
.IP \-withrevinfo
Causes any source control manager subdirectories
(those named BitKeeper, CVS, CVS.adm, .git, .hg, RCS, SCCS, or .svn)
to be treated as any other directory, rather than ignored.
.SH DIAGNOSTICS
The program displays the name of each subdirectory it enters, followed
by a colon. The \fB\-silent\fP option suppresses these messages.
.PP
A warning message is displayed if the symbolic link cannot be created.
The usual problem is that a regular file of the same name already
exists.
.PP
If the link already exists but doesn't point to the correct file, the
program prints the link name and the location where it does point.
.SH SEE ALSO
.BR ln (1).

376
lndir/missing Executable file
View File

@ -0,0 +1,376 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
scriptversion=2009-04-28.21; # UTC
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
# 2008, 2009 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# 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, 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, see <http://www.gnu.org/licenses/>.
# 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.
if test $# -eq 0; then
echo 1>&2 "Try \`$0 --help' for more information"
exit 1
fi
run=:
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
# In the cases where this matters, `missing' is being run in the
# srcdir already.
if test -f configure.ac; then
configure_ac=configure.ac
else
configure_ac=configure.in
fi
msg="missing on your system"
case $1 in
--run)
# Try to run requested program, and just exit if it succeeds.
run=
shift
"$@" && exit 0
# Exit code 63 means version mismatch. This often happens
# when the user try to use an ancient version of a tool on
# a file that requires a minimum version. In this case we
# we should proceed has if the program had been absent, or
# if --run hadn't been passed.
if test $? = 63; then
run=:
msg="probably too old"
fi
;;
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
error status if there is no known handling for PROGRAM.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
--run try to run the given command, and emulate it if it fails
Supported PROGRAM values:
aclocal touch file \`aclocal.m4'
autoconf touch file \`configure'
autoheader touch file \`config.h.in'
autom4te touch the output file, or create a stub one
automake touch all \`Makefile.in' files
bison create \`y.tab.[ch]', if possible, from existing .[ch]
flex create \`lex.yy.c', if possible, from existing .c
help2man touch the output file
lex create \`lex.yy.c', if possible, from existing .c
makeinfo touch the output file
tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
\`g' are ignored when checking the name.
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)"
exit $?
;;
-*)
echo 1>&2 "$0: Unknown \`$1' option"
echo 1>&2 "Try \`$0 --help' for more information"
exit 1
;;
esac
# normalize program name to check for.
program=`echo "$1" | sed '
s/^gnu-//; t
s/^gnu//; t
s/^g//; t'`
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
# the program). This is about non-GNU programs, so use $1 not
# $program.
case $1 in
lex*|yacc*)
# Not GNU programs, they don't have --version.
;;
tar*)
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
exit 1
fi
;;
*)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
# Could not run --version or --help. This is probably someone
# running `$TOOL --version' or `$TOOL --help' to check whether
# $TOOL exists and not knowing $TOOL uses missing.
exit 1
fi
;;
esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
case $program in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
to install the \`Automake' and \`Perl' packages. Grab them from
any GNU archive site."
touch aclocal.m4
;;
autoconf*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
archive site."
touch configure
;;
autoheader*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want
to install the \`Autoconf' and \`GNU m4' packages. Grab them
from any GNU archive site."
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
test -z "$files" && files="config.h"
touch_files=
for f in $files; do
case $f in
*:*) touch_files="$touch_files "`echo "$f" |
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
*) touch_files="$touch_files $f.in";;
esac
done
touch $touch_files
;;
automake*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
You might want to install the \`Automake' and \`Perl' packages.
Grab them from any GNU archive site."
find . -type f -name Makefile.am -print |
sed 's/\.am$/.in/' |
while read f; do touch "$f"; done
;;
autom4te*)
echo 1>&2 "\
WARNING: \`$1' is needed, but is $msg.
You might have modified some files without having the
proper tools for further handling them.
You can get \`$1' as part of \`Autoconf' from any GNU
archive site."
file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -f "$file"; then
touch $file
else
test -z "$file" || exec >$file
echo "#! /bin/sh"
echo "# Created by GNU Automake missing as a replacement of"
echo "# $ $@"
echo "exit 0"
chmod +x $file
exit 1
fi
;;
bison*|yacc*)
echo 1>&2 "\
WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package
in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site."
rm -f y.tab.c y.tab.h
if test $# -ne 1; then
eval LASTARG="\${$#}"
case $LASTARG in
*.y)
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.c
fi
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.h
fi
;;
esac
fi
if test ! -f y.tab.h; then
echo >y.tab.h
fi
if test ! -f y.tab.c; then
echo 'main() { return 0; }' >y.tab.c
fi
;;
lex*|flex*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package
in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site."
rm -f lex.yy.c
if test $# -ne 1; then
eval LASTARG="\${$#}"
case $LASTARG in
*.l)
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
if test -f "$SRCFILE"; then
cp "$SRCFILE" lex.yy.c
fi
;;
esac
fi
if test ! -f lex.yy.c; then
echo 'main() { return 0; }' >lex.yy.c
fi
;;
help2man*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
\`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site."
file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -f "$file"; then
touch $file
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
exit $?
fi
;;
makeinfo*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious
call might also be the consequence of using a buggy \`make' (AIX,
DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site."
# The file to touch is that specified with -o ...
file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -z "$file"; then
# ... or it is the one specified with @setfilename ...
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
file=`sed -n '
/^@setfilename/{
s/.* \([^ ]*\) *$/\1/
p
q
}' $infile`
# ... or it is derived from the source name (dir/f.texi becomes f.info)
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
fi
# If the file does not exist, the user really needs makeinfo;
# let's fail without touching anything.
test -f $file || exit 1
touch $file
;;
tar*)
shift
# We have already tried tar in the generic part.
# Look for gnutar/gtar before invocation to avoid ugly error
# messages.
if (gnutar --version > /dev/null 2>&1); then
gnutar "$@" && exit 0
fi
if (gtar --version > /dev/null 2>&1); then
gtar "$@" && exit 0
fi
firstarg="$1"
if shift; then
case $firstarg in
*o*)
firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" "$@" && exit 0
;;
esac
case $firstarg in
*h*)
firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" "$@" && exit 0
;;
esac
fi
echo 1>&2 "\
WARNING: I can't seem to be able to run \`tar' with the given arguments.
You may want to install GNU tar or Free paxutils, or check the
command line arguments."
exit 1
;;
*)
echo 1>&2 "\
WARNING: \`$1' is needed, and is $msg.
You might have modified some files without having the
proper tools for further handling them. Check the \`README' file,
it often tells you about the needed prerequisites for installing
this package. You may also peek at any GNU archive site, in case
some other package would contain this missing \`$1' program."
exit 1
;;
esac
exit 0
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

18
makedepend/AUTHORS Normal file
View File

@ -0,0 +1,18 @@
[List assembled from incomplete history information. Please send updates
to xorg@lists.freedesktop.org if we've missed any contributors.]
Original author:
Todd Brunhoff, Tektronix, Inc. and MIT Project Athena
ifparser author:
Jim Fulton, Network Computing Devices, Inc.
Additional contributors:
David Dawes
Egbert Eich
Alexander Gottwald
Harold L Hunt II
Mark La France
Mark Snitily
Alexander Stohr

50
makedepend/COPYING Normal file
View File

@ -0,0 +1,50 @@
Most of the source is covered by this copyright notice & license:
Copyright (c) 1993, 1994, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
------------------------------------------------------------------------------
ifparser.c & ifparser.h are covered by this copyright notice & license:
Copyright 1992 Network Computing Devices, Inc.
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted, provided
that the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation, and that the name of Network Computing Devices may not be
used in advertising or publicity pertaining to distribution of the software
without specific, written prior permission. Network Computing Devices makes
no representations about the suitability of this software for any purpose.
It is provided ``as is'' without express or implied warranty.
NETWORK COMPUTING DEVICES DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS,
IN NO EVENT SHALL NETWORK COMPUTING DEVICES BE LIABLE FOR ANY SPECIAL,
INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
------------------------------------------------------------------------------

913
makedepend/ChangeLog Normal file
View File

@ -0,0 +1,913 @@
commit e4971e9507f989d68c97a92edd1e6e1881ad1d55
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Mar 16 16:39:07 2019 -0700
makedepend 1.0.6
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 7897a5b8edd142d4de63933db3e544262006289e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Dec 7 20:35:14 2018 -0800
Update configure.ac bug URL for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 277eaf65d43f9fe9d3d223810e1872c32436c01e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Mon Nov 19 23:40:18 2018 -0800
Update README for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit d15117c98a071b8fd30fb163fc45cb37db760654
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 5 10:54:59 2018 -0700
Simplify writing of output lines to Makefile
Instead of writing everything to a temporary buffer, and then using
fwrite() to have it fputc() one character at a time into the stdio
buffer, just use fprintf() directly to save a copy and write in
larger blocks.
Testing on Solaris on makedepend's own source files showed a
reduction in memcpy's from 4037 to 3108, and in _dowrite calls
in stdio from 1173 to 168, but no change in actual write calls
from stdio's buffer to the file.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4f410f3ed29fdb0f98be1e01930ba1a909a36ef0
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 5 10:05:44 2018 -0700
Remove unused variable whitespace
Use of it was removed in commit 275c17136006f9d, but we kept setting
it anyway.
Resolves gcc 7.3 warning:
main.c: In function getnextline:
main.c:587:10: warning: variable whitespace set but not used [-Wunused-but-set-variable]
boolean whitespace = FALSE;
^~~~~~~~~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 223b315a9148ec0091837f2e369bbb3ec5d49e11
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 5 10:00:38 2018 -0700
Fix bad indentation in ifparser.c
ifparser.c: In function parse_product:
ifparser.c:300:5: warning: this else clause does not guard... [-Wmisleading-indentation]
else
^~~~
ifparser.c:302:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the else
break;
^~~~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 13385d8add69156805f824cedcdad2986a23662d
Author: Antonio Larrosa <alarrosa@suse.com>
Date: Tue Feb 2 18:31:27 2016 +0100
Quote colons in filenames/paths
Makefile doesn't like colons in filenames/paths so they must
be quoted in the output. Otherwise makedepend doesn't work with
full paths that contain a colon.
V2: Use quoted filename when measuring name length
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 5fb14ee51f849ec86c109bae101ae3f7b7ed7e39
Author: David Boyce <boyski@users.sourceforge.net>
Date: Fri Dec 27 18:50:38 2013 -0800
Bumped -I flag limit in makedepend from 64 to 512.
Clearly a limit of 64 -I flags is too low (we hit it); it might be
a good style recommendation but shouldn't be a hard limit.
512 is a fairly random replacement value.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 0860822bb2a1bbc6e40758e2e6413181b26b6b04
Author: Dirk <doj@cubic.org>
Date: Thu Feb 11 18:48:13 2016 +0000
missing bounds check in makedepend for file arguments
When assigning source code files from the command line to the fp pointer,
no bounds check is done and if more than MAXFILES file names are specified
on the command line, memory will be overridden out of bounds.
https://bugs.freedesktop.org/show_bug.cgi?id=94099
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Tested-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 72cc0b7713b28ffd03271526c81d1ad9d2183a82
Author: Mihail Konev <k.mvc@ya.ru>
Date: Thu Jan 26 13:52:49 2017 +1000
autogen: add default patch prefix
Signed-off-by: Mihail Konev <k.mvc@ya.ru>
commit f11006e04bb87b060cc6a5b64f4dd0eeb8b3447f
Author: Emil Velikov <emil.l.velikov@gmail.com>
Date: Mon Mar 9 12:00:52 2015 +0000
autogen.sh: use quoted string variables
Place quotes around the $srcdir, $ORIGDIR and $0 variables to prevent
fall-outs, when they contain space.
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
commit c5cc6e0ff2d60133a4b7560df67607ceeb9d55a6
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date: Tue Jan 24 10:32:07 2017 +1000
autogen.sh: use exec instead of waiting for configure to finish
Syncs the invocation of configure with the one from the server.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
commit a4f82f917a9b0802b70cd80c21d2e53688e2b9b3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Mar 12 10:11:03 2016 -0800
Use do { ... } while(0) idiom to make debug() macro safer
Cleans up several -Wempty-body warnings from gcc 5.3
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
commit 9da873c5a036c95aa24a7dc3562d405609262381
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Aug 2 21:49:39 2013 -0700
Constify a pair of local string pointers
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 30859adfd6a6523a92a637ca26bd61ce59680a1b
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Mon Jul 22 22:14:36 2013 -0700
makedepend 1.0.5
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 5b6d3797eae3bac824cf72c0c8f64f51e3d4eaef
Author: Julien Cristau <jcristau@debian.org>
Date: Mon Jul 1 18:57:12 2013 +0200
Don't crash if an option's argument is missing
Avoid dereferencing argv[argc].
See http://www.forallsecure.com/bug-reports/011f1a55f79a5501b36008d6ee0d40e8b6644569/
Reported-by: Alexandre Rebert <alexandre@cmu.edu>
Signed-off-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 107c2fcf5c7576ee66ee23926f0431b6db27a07a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Feb 23 09:57:51 2013 -0800
Assume signal handlers return void, as C89 requires
Drops use of autoconf's obsolete AC_TYPE_SIGNAL
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit b2c6d0d0f64d419590c7cd77aae4890866665cba
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Tue Feb 12 18:36:30 2013 -0800
Bug 56091 - Unsafe use of strcpy() in makedepend
Use memmove for potentially overlapping copies.
Reported-by: Laurence Jupp <laurence@narya.org>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Matthieu Herrb <matthieu.herrb@laas.fr>
commit 897e25de0cf27bd345130912a6da34b0c802a0ca
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Tue Feb 12 18:33:44 2013 -0800
Store len in a size_t instead of an int in redirect()
Fixes clang warnings about converting back & forth:
main.c:761:8: warning: implicit conversion loses integer precision: 'size_t'
(aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
len = strlen(line);
~ ^~~~~~~~~~~~
main.c:763:41: warning: implicit conversion changes signedness: 'int' to
'size_t' (aka 'unsigned long') [-Wsign-conversion]
if (*buf == '#' && strncmp(line, buf, len) == 0)
~~~~~~~ ^~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 87fd28cd5a5acfe6e91c97c4af0a469e1e86cbd5
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Jan 20 22:45:53 2013 -0800
Mark fatalerr & catch as _X_NORETURN
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 637c59e78f699a824e78316cb8ca3113bb5c738b
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jan 12 14:40:40 2013 -0800
Replace deprecated Automake INCLUDES variable with AM_CPPFLAGS
Excerpt https://lists.gnu.org/archive/html/automake/2012-12/msg00038.html
- Support for the long-deprecated INCLUDES variable will be removed
altogether in Automake 1.14. The AM_CPPFLAGS variable should be
used instead.
This variable was deprecated in Automake releases prior to 1.10, which is
the current minimum level required to build X.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
commit 059e9be5a7321974b190d786d426b2ae27be8c56
Author: Glenn Burkhardt <gbburkhardt@gmail.com>
Date: Fri Jan 11 22:09:54 2013 -0800
Bug 52099 - makedepend rename fails on CIFS mounted shares
Patch v1: https://bugs.freedesktop.org/attachment.cgi?id=64218
v2: modified by Alan Coopersmith to restore Makefile to original name
if contents cannot be read, instead of leaving it moved to .bak name.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit bb29c304c09aba567af0f0d77a63f0202c3836c6
Author: Colin Walters <walters@verbum.org>
Date: Wed Jan 4 17:37:06 2012 -0500
autogen.sh: Implement GNOME Build API
http://people.gnome.org/~walters/docs/build-api.txt
Signed-off-by: Adam Jackson <ajax@redhat.com>
commit 9685da3e7136e01a7bc780d81667abf5897b87a6
Author: Adam Jackson <ajax@redhat.com>
Date: Wed Jan 16 12:59:58 2013 -0500
configure: Drop AM_MAINTAINER_MODE
Signed-off-by: Adam Jackson <ajax@redhat.com>
commit 8e4373712409e2411652cf0697c33d91e95fd405
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Jan 11 22:29:19 2013 -0800
Fix a comment typo
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 3a28a2a0146c4979281ffea641dede9a32df08f9
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jan 5 09:55:04 2013 -0800
Convert more sprintf calls to snprintf
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 639071ff3446b0df53078be1ff5820c812313aa7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jan 5 09:42:33 2013 -0800
Remove unnecessary casts from malloc/realloc calls
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 1b5e7ee6483415d7093f3d5395c4832fa69f0a28
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jan 5 09:25:43 2013 -0800
Remove fallbacks for Imake configuration, assume autoconf
For the original 6.9/7.0 release, we supported using either autoconf or
imake to generate configuration. For releases after that, we're only
supporting autoconf, so no longer need to check & fall back to imake.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4db1a4f15ef704b6b6faf1741054d59cb527298a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jan 5 09:15:28 2013 -0800
Move i_listlen in struct inclist for better packing in 64-bit builds
Putting it with another int instead of between two pointers gets rid
of two places where 4 bytes each had to be padded into the structure
for alignment.
Reduces the size of an individual struct from 64 bytes to 56 bytes,
and of the inclist[ MAXFILES ] array from 128k to 112k.
Found by clang:
./def.h:111:18: warning: padding struct 'struct inclist' with 4 bytes to align 'i_defs' [-Wpadded]
struct symtab **i_defs; /* symbol table for this file and its
^
./def.h:114:12: warning: padding struct 'struct inclist' with 4 bytes to align 'i_merged' [-Wpadded]
boolean *i_merged; /* whether we have merged child
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit c5378d3e7bb79880b9ea6f7f055393ae42eae55f
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jan 5 09:05:17 2013 -0800
config: Remove unnecessary calls from configure.ac
AC_PROG_CC is provided by XORG_DEFAULT_OPTIONS now
PKG_CONFIG_MODULES handles AC_SUBST of the CFLAGS & LIBS variables
commit 3db923e80852b088b1d0583bad7fca05e173efdc
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jan 5 09:01:03 2013 -0800
Update configure.ac initialization to X.Org standard form
Regroup AC statements under the Autoconf initialization section.
Regroup AM statements under the Automake initialization section.
Add missing AC_CONFIG_SRCDIR
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 6d70e2776b41977a87bbe32220f4d3f8a62dc763
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Jan 4 20:07:43 2013 -0800
unifdef -U__UNIXOS2__
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 01238aa25c3bb1e0c909f63dd3bc97c48bd8bf6d
Author: Marko Lindqvist <cazfi74@gmail.com>
Date: Fri Jan 4 20:02:33 2013 -0800
Bug 59005 - makedepend: Build with automake-1.13 broken
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 49d72ba286c1ddd99cf1e6477ee2b6af59007341
Author: Julien Cristau <jcristau@debian.org>
Date: Wed Mar 14 19:49:14 2012 +0100
configure.ac: use AM_MAINTAINER_MODE
commit b6605e3945eaaabbd090672f33e888d394f9a4f0
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Mar 7 21:52:14 2012 -0800
makedepend 1.0.4
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit cb8bbc06de0baf2dff4a703e6d2bb47bdf90d896
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 18:07:24 2011 -0700
define(): Avoid assigning constant string to non-const char *
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit b9770941ae829ad2cb985efe809d6e3dd690648b
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 18:02:34 2011 -0700
Call strdup directly, instead of via copy macro
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 0ecf5f3251033ab6efa1a0d881f75ed9ce60b5a4
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 18:00:39 2011 -0700
Add const attributes to fix gcc -Wwrite-strings warnings
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 97ae52f80f9e382917889bde1913367572e89012
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 17:47:36 2011 -0700
Move extern variable declarations to common header (def.h)
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 3602fb0b7ba2bde9c73610693dbb50534fe42b81
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 7 17:34:17 2011 -0700
Strip trailing whitespace
Performed with: find * -type f | xargs perl -i -p -e 's{[ \t]+$}{}'
git diff -w & git diff -b show no diffs from this change
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit c1f32dc1d4c1758065468e1f5d34707099f59f33
Author: Stuart Kreitman <Stuart.Kreitman@Oracle.COM>
Date: Mon May 24 14:21:21 2010 -0700
Raise MAXFILES from 1024 to 2048
Required in order to build OpenTTD on Solaris
http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6917536
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit cc23acdd80fa0cad53e46f99cd0ff5998ec7f607
Author: Cyril Brulebois <kibi@debian.org>
Date: Sun Oct 31 15:50:36 2010 +0100
Fix bashism: shell string comparison is =, not ==.
Signed-off-by: Cyril Brulebois <kibi@debian.org>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 186aae76a84860d0efef638ff499ab1968fffd75
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 29 22:53:25 2010 -0700
Add README with pointers to mailing list, bugzilla & git repos
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit e67389ecc0c425bcfec0a3184ee48919e0e2c61a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 29 22:45:35 2010 -0700
makedepend 1.0.3
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit bf25a6cb4888e5cf6827cd51cb7ee282cfb6cf47
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 29 22:39:51 2010 -0700
config: upgrade to util-macros 1.8 for additional man page support
Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
The value of MAN_SUBST is the same for all X.Org packages.
Use AC_PROG_SED now supplied by XORG_DEFAULT_OPTIONS
Enables use of platform appropriate version of sed.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 7963cc382a3a351410b1342a9783df3af8516944
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Tue Jul 20 18:45:18 2010 -0400
config: update AC_PREREQ statement to 2.60
Unrelated to the previous patches, the new value simply reflects
the reality that the minimum level for autoconf to configure
all x.org modules is 2.60 dated June 2006.
ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit 58bd34e6c3662ef06e9ef0dd78d69f003df42bdc
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri May 14 21:14:44 2010 -0700
Convert testcase from bug 28045 into automake "make check" test
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 8522c314da7537169996476fe5ba411f720a09fe
Author: Martin Pärtel <lagitus@mbnet.fi>
Date: Fri May 14 21:00:15 2010 -0700
Bug 28045 - makedepend fails on directory named like an include file
<https://bugs.freedesktop.org/show_bug.cgi?id=28045>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit c976a7fc7c21772c00de9e61178cf467c6a10b57
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 10 22:08:09 2009 -0700
makedepend 1.0.2
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit c2abfbb9ea21bec53706295064c328e5d2721abd
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 10 22:07:44 2009 -0700
Migrate to xorg macros 1.3 & XORG_DEFAULT_OPTIONS
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit f3bbd454d8220a0c30c1a788965a7f16501350ab
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 10 21:03:53 2009 -0700
Remove CVS/RCS version tags
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 42ee120e8c49c5f9aaba35689e09f9ecef407758
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 18:47:23 2009 -0700
Fix gcc, sparse & lint warnings
cppsetup.c:74:9: warning: Using plain integer as NULL pointer
parse.c: In function `gobble':
parse.c:94: warning: int format, long int arg (arg 2)
parse.c: In function `find_includes':
parse.c:641: warning: int format, long int arg (arg 2)
parse.c:664: warning: int format, long int arg (arg 2)
parse.c:677: warning: int format, long int arg (arg 2)
parse.c:684: warning: int format, long int arg (arg 2)
pr.c: In function `add_include':
pr.c:57: warning: int format, long int arg (arg 4)
pr.c:59: warning: int format, long int arg (arg 3)
declared global, could be static
sig_act main.c(142)
predefs main.c:imakemdep.h(51)
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit c7c7197d265a299c82c6629fba867730aad81375
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 18:22:37 2009 -0700
Increased constification
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit a6a8afb0a82a175822077442f44865c75ab70ff1
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 17:34:42 2009 -0700
Remove #ifdef'ed code that's never used
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 3e8c1a2a8e7db49b06f602c2fc5a8108d74dd384
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 17:27:47 2009 -0700
Remove ifdef checks for macII left over from ancient A/UX 3.0 support
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit e3bc51e4ea2dce1901c4f7ce43df2f456ececdcf
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 17:25:56 2009 -0700
Use XORG_CHANGELOG, XORG_CWARNFLAGS, and XORG_WITH_LINT macros
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit cc3112b6d0434d8e7ecbe3832a5aa48cd0f5185d
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 16:34:45 2009 -0700
Add additional predefines needed to match Solaris compilers
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit f871e026bedc296c235dae02e533617fe9a4d3f2
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 16:16:47 2009 -0700
Delete portions of imakemdep.h not used by makedepend
This header was shared by imake & makedepend in the monolith, but each
got its own copy in the modular builds.
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 26cb2802170d349fa1b2ab2237e6f2c0d1df1709
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 16:02:55 2009 -0700
Add .gitignore
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 4d821427ac3e7e3de86f46e3b1e638c65758b774
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Tue Mar 24 16:00:19 2009 -0700
Use AM_CPPFLAGS instead of makedepend_CPPFLAGS to avoid mangled .o names
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 617fc1304afdca2fb82e3a65d9a4999058d86021
Author: James Cloos <cloos@jhcloos.com>
Date: Thu Dec 6 16:39:17 2007 -0500
Replace static ChangeLog with dist-hook to generate from git log
commit 5239f25be018b2e9cf3620d5c1c62bac4e1e116d
Author: Jeremy C. Reed <reed@glacier.reedmedia.net>
Date: Wed Mar 21 15:27:57 2007 -0500
Update version for release.
commit e2bea6a0278f182f9cc8b7bac660da49d24d2e50
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Fri Jun 2 19:21:52 2006 +0000
Coverity #925: Pointer "file" dereferenced before NULL check
commit fbb0a1b59b410a5873cf33c4cedc32f32ea03a59
Author: Kevin E Martin <kem@kem.org>
Date: Thu Dec 15 00:24:40 2005 +0000
Update package version number for final X11R7 release candidate.
commit cbb537c9276302f56c82c0dd010db400bd605f57
Author: Adam Jackson <ajax@nwnk.net>
Date: Fri Dec 9 18:27:47 2005 +0000
Bug #4380: Avoid dividing by zero in gccmakedepend (Vincent Le Ligeour)
commit 34c35bcb3851909468c679c2014b6197c7be270e
Author: Kevin E Martin <kem@kem.org>
Date: Tue Dec 6 22:48:47 2005 +0000
Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
commit c30b8896d6a6e1272e7e703cac5866802a5e30a2
Author: Kevin E Martin <kem@kem.org>
Date: Sat Dec 3 05:49:47 2005 +0000
Update package version number for X11R7 RC3 release.
commit 0f756745a930e995fb529ffe34cd7f7d36c68d4a
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Mon Nov 28 22:00:24 2005 +0000
Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
commit 9bd896db001a270770506c25232435ddeb7a7f22
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Sun Nov 20 03:24:01 2005 +0000
Remove duplicate setting of EXTRA_DIST
commit 3a5f945b6e15c6799b2a796f82ed1222140fc62d
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Sat Nov 12 20:04:58 2005 +0000
Substitute variables in man page
[Also resync Changelog with monolith]
commit aaa64b9dc41b6b3ed3f5acd7eb2b517c3499a521
Author: Kevin E Martin <kem@kem.org>
Date: Wed Nov 9 21:25:57 2005 +0000
Update package version number for X11R7 RC2 release.
commit 3ead9564d1f63a1080c97b1ba44af17a74938485
Author: Kean Johnson <kean@armory.com>
Date: Tue Nov 8 06:33:24 2005 +0000
See ChangeLog entry 2005-11-07 for details.
commit d13a9d5d03bf5ebab5c847bdc616f276971d39d8
Author: Kevin E Martin <kem@kem.org>
Date: Wed Oct 19 02:48:17 2005 +0000
Update package version number for RC1 release.
commit 3b21840ce7b2c7825c40dd3f0463d66aee692fc6
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Mon Oct 3 16:17:10 2005 +0000
Bug #3812 <https://bugs.freedesktop.org/show_bug.cgi?id=3812> Patch #3462
<https://bugs.freedesktop.org/attachment.cgi?id=3462> GNU/kFreeBSD
Imake support (Robert Millan)
commit f002b90281e623b7611565a49a5d12fb517800ae
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Mon Aug 1 02:13:55 2005 +0000
Pass through __BUILTIN_VA_STRUCT and __BUILTIN_VA_ARG_INCR defines in
makedepend so it doesn't issue errors when source files include
<varargs.h> or <stdarg.h> on Solaris 10.
commit ddabc8840aee8a90ea6b7f6fe8f1af7f692a2576
Author: Kevin E Martin <kem@kem.org>
Date: Fri Jul 29 21:22:58 2005 +0000
Various changes preparing packages for RC0:
- Verify and update package version numbers as needed
- Implement versioning scheme
- Change bug address to point to bugzilla bug entry form
- Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
reenable it)
- Fix makedepend to use pkgconfig and pass distcheck
- Update build script to build macros first
- Update modular Xorg version
commit c8e6f83244036256d3f56c35ec8c60f03dc51275
Author: Kevin E Martin <kem@kem.org>
Date: Fri Jul 29 18:42:37 2005 +0000
Update #includes to use <X11/*.h> for modularization.
commit 275c17136006f9d3929c9547642f1ed3f95d5683
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Tue Jul 5 19:02:01 2005 +0000
Bugzilla #2901 <https://bugs.freedesktop.org/show_bug.cgi?id=2901> Patch
#2320 <https://bugs.freedesktop.org/attachment.cgi?id=2320>
Remove warning about whitespace in pre-processor defines. (Peter
Breitenlohner)
commit 9debe1d47d8869949b15f5ea43222f5b22465b32
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Sun May 22 19:01:58 2005 +0000
Add makedepend man page
commit 1ee2b235655779213e8b5e0455104161a88a536c
Author: Adam Jackson <ajax@nwnk.net>
Date: Thu May 19 00:22:44 2005 +0000
revert last change, didn't do right thing at all, sorry for the noise
commit d22b9d44523591e042569112aaba3b7437dd4c7e
Author: Adam Jackson <ajax@nwnk.net>
Date: Thu May 19 00:10:23 2005 +0000
Require automake 1.7 in AM_INIT_AUTOMAKE
commit b0e61cfcfbb56696597eb65511c74ad901d62b58
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Sun May 15 21:16:24 2005 +0000
Initial attempt at autotooling/modular conversion of makedepend
commit dabc4c7abcba043e206745bdb101aafb48c00c71
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Sun May 15 21:06:38 2005 +0000
[Modularization/autotooling project] Add support for building with autoconf
#ifdefs if present. #include "makedepend-config.h" if HAVE_CONFIG_H is
defined.
commit 4a64cca6526e26c93f7011ba5e4fedb511af4560
Author: Roland Mainz <roland.mainz@nrubsig.org>
Date: Wed Mar 2 11:20:29 2005 +0000
xc/config/cf/DragonFly.cf
xc/config/cf/Imake.cf
xc/config/cf/Imakefile
xc/config/imake/imake.c
xc/config/imake/imakemdep.h
xc/extras/drm/shared/drm.h
xc/include/Xos_r.h
xc/lib/xtrans/Xtranssock.c
xc/programs/Xserver/hw/xfree86/os-support/xf86_OSlib.h
xc/programs/Xserver/hw/xfree86/os-support/xf86_libc.h
xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c
//bugs.freedesktop.org/show_bug.cgi?id=1712) attachment #2004
(https://bugs.freedesktop.org/attachment.cgi?id=2004): Add support for
DragonFly/BSD platform. Patch by Jeroen Ruigrok <asmodai@tendra.org>
and Mike Verona <firedragonfly@gmail.com>.
commit a2abf77f552d3930d07721e2aa388bb8d87a621a
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date: Wed Jan 19 22:28:20 2005 +0000
Pass through additional #defines for Solaris. (Sun bug id #5097074 - Alan
Coopersmith)
commit 33dd47009fe09ce9e5628df51914821d416be78d
Author: Alexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de>
Date: Mon Nov 15 15:06:52 2004 +0000
Bufzilla #1802, http://freedesktop.org/bugzilla/show_bug.cgi?id=1802 Added
mingw (Win32) port
commit 67b078bc115ca3c52545b9dacb2b0fc0a1c9e90e
Author: Egbert Eich <eich@suse.de>
Date: Tue Oct 19 13:50:06 2004 +0000
Enabling modules and DRI for Linux HPPA.
Removing hpsocket.c as it isn't used anywhere any more (Bugzilla #1584).
commit 967895bc594e45f065a97005a248ef71139eb269
Author: Egbert Eich <eich@suse.de>
Date: Mon Oct 18 14:26:35 2004 +0000
powerpc/powerpc64 build fixes.
commit f1300e657659259b4082ad83de3b59a7b6b1094b
Author: Kevin E Martin <kem@kem.org>
Date: Wed Aug 11 21:14:02 2004 +0000
Apply PPC64 build patch (Bug #303, Mike A. Harris, Alan Coopersmith).
commit 1529cb60b2652030598008c151678100ffc3f9ac
Author: Egbert Eich <eich@suse.de>
Date: Thu May 6 17:31:17 2004 +0000
BugZilla #601: Fixing makedepend choking on floating point exception
because CHAR_BIT is defined to __CHAR_BIT__ which is a compiler
intrinsic define. BugZilla #605: Fixing build on IA64 which is broken
due to the inclusion of the kernel header asm/page.h. Kernel headers
however don't work with
-ansi. The inclusion of asm/page.h can however savely be removed as it
there are plenty of other ways to determine the page size.
commit 25324cd43b4735cafa7b6900ad23356f44077bc6
Author: Egbert Eich <eich@suse.de>
Date: Fri Apr 23 18:42:00 2004 +0000
Merging XORG-CURRENT into trunk
commit 97527faa1b2b9f66be7171454161f273b986ee46
Author: Egbert Eich <eich@suse.de>
Date: Sun Mar 14 08:27:26 2004 +0000
Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
commit cc985b59a40838d617ec2c5b03771620e56fe461
Author: Egbert Eich <eich@suse.de>
Date: Wed Mar 3 12:09:38 2004 +0000
Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
commit 9820a186a6d0e6b16909264c67f49b0a858ac07c
Author: Egbert Eich <eich@suse.de>
Date: Thu Feb 26 13:34:16 2004 +0000
readding XFree86's cvs IDs
commit d5b34044c15be35736038c188d2681cf7cfb63a9
Author: Egbert Eich <eich@suse.de>
Date: Thu Feb 26 09:21:14 2004 +0000
Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
commit 7ff0f162b4f5a062dd4e58e7ce110757f539465b
Author: Egbert Eich <eich@suse.de>
Date: Thu Jan 29 08:06:33 2004 +0000
Importing vendor version xf86-012804-2330 on Thu Jan 29 00:06:33 PST 2004
commit 200c9bd9793c0d2dbefd1f0a2be197a2d4e3a364
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Tue Nov 25 19:26:56 2003 +0000
XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
commit a15b8ac6912cef59d7e1ba7a80e58466e2c9fcba
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 16:48:20 2003 +0000
XFree86 4.3.0.1
commit ac5d447a2f18bdd07d5f97bb27cd9d065e30f683
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date: Fri Nov 14 15:54:29 2003 +0000
R6.6 is the Xorg base-line

73
makedepend/Makefile.am Normal file
View File

@ -0,0 +1,73 @@
bin_PROGRAMS = makedepend
makedepend_SOURCES = include.c \
main.c \
parse.c \
pr.c \
cppsetup.c \
ifparser.c \
ifparser.h \
def.h \
imakemdep.h
AM_CPPFLAGS = -DOBJSUFFIX=\".${OBJEXT}\" -DINCLUDEDIR=\"/usr/include\"
AM_CPPFLAGS += $(X_CFLAGS)
AM_CFLAGS = $(CWARNFLAGS)
EXTRA_DIST = autogen.sh makedepend.man README.md
# Man page
appmandir = $(APP_MAN_DIR)
appman_PRE = makedepend.man
appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
CLEANFILES = $(appman_DATA)
# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
MAN_SUBSTS += \
-e 's|__cpp__|$(RAWCPP)|g'
SUFFIXES = .$(APP_MAN_SUFFIX) .man
.man.$(APP_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
EXTRA_DIST += ChangeLog
MAINTAINERCLEANFILES = ChangeLog
.PHONY: ChangeLog
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog
if LINT
ALL_LINT_FLAGS=$(LINT_FLAGS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS)
lint:
$(LINT) $(ALL_LINT_FLAGS) $(makedepend_SOURCES)
endif LINT
### Test cases - mostly for bug fixes submitted with a test case so far
TESTS =
# Absolute path to srcdir & builddir top that test scripts can reference
TEST_BUILDDIR_PATH = `cd $(top_builddir) && pwd`
TEST_SRCDIR_PATH = `cd $(top_srcdir) && pwd`
# Path to makedepend command being tested that can be found from test subdirs
TESTS_ENVIRONMENT = MAKEDEPEND="$(TEST_BUILDDIR_PATH)/makedepend"
# Path to writable testdirectory in build directory
TESTS_ENVIRONMENT += test_builddir="$(TEST_BUILDDIR_PATH)/tests"
# Path to testcase files in source directory
TESTS_ENVIRONMENT += test_srcdir="$(TEST_SRCDIR_PATH)/tests"
# Test for https://bugs.freedesktop.org/show_bug.cgi?id=28045
TESTS += tests/28045/makedep.sh
EXTRA_DIST += tests/28045/makedep.sh tests/28045/foo.cpp

1251
makedepend/Makefile.in Normal file

File diff suppressed because it is too large Load Diff

20
makedepend/README.md Normal file
View File

@ -0,0 +1,20 @@
makedepend - create dependencies in makefiles
---------------------------------------------
makedepend parses C sources to make dependency lists for Makefiles.
All questions regarding this software should be directed at the
Xorg mailing list:
https://lists.x.org/mailman/listinfo/xorg
The master development code repository can be found at:
https://gitlab.freedesktop.org/xorg/util/makedepend
Please submit bug reports and requests to merge patches there.
For patch submission instructions, see:
https://www.x.org/wiki/Development/Documentation/SubmittingPatches

3338
makedepend/aclocal.m4 vendored Normal file

File diff suppressed because it is too large Load Diff

17
makedepend/autogen.sh Executable file
View File

@ -0,0 +1,17 @@
#! /bin/sh
srcdir=`dirname "$0"`
test -z "$srcdir" && srcdir=.
ORIGDIR=`pwd`
cd "$srcdir"
autoreconf -v --install || exit 1
cd "$ORIGDIR" || exit $?
git config --local --get format.subjectPrefix >/dev/null 2>&1 ||
git config --local format.subjectPrefix "PATCH util/makedepend"
if test -z "$NOCONFIGURE"; then
exec "$srcdir"/configure "$@"
fi

347
makedepend/compile Executable file
View File

@ -0,0 +1,347 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2012-10-14.11; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# 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, 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, see <http://www.gnu.org/licenses/>.
# 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.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

Some files were not shown because too many files have changed in this diff Show More