Bug 740854 - Remove --disable-auto-deps, SYSTEM_MAKEDEPEND, MOZ_NATIVE_MAKEDEPEND and associated crap. r=ted
authorSiddharth Agarwal <sid.bugzilla@gmail.com>
Tue, 28 Aug 2012 00:57:16 +0530
changeset 109903 8ac55d26cf220716f85cc55471b2eb5cbdc5069f
parent 109902 72755799451cc5e8d79dfc0e1c430634f19df023
child 109904 dbeed4d1e2045bba919ea4284307bf2aac061893
push idunknown
push userunknown
push dateunknown
reviewersted
bugs740854
milestone17.0a1
Bug 740854 - Remove --disable-auto-deps, SYSTEM_MAKEDEPEND, MOZ_NATIVE_MAKEDEPEND and associated crap. r=ted
allmakefiles.sh
config/Makefile.in
config/config.mk
config/makedep.cpp
config/makedep.exe
config/mkdepend/Makefile.in
config/mkdepend/cppsetup.c
config/mkdepend/def.h
config/mkdepend/ifparser.c
config/mkdepend/ifparser.h
config/mkdepend/imakemdep.h
config/mkdepend/include.c
config/mkdepend/main.c
config/mkdepend/mkdepend.man
config/mkdepend/parse.c
config/mkdepend/pr.c
config/rules.mk
configure.in
js/src/config/Makefile.in
js/src/config/config.mk
js/src/config/mkdepend/Makefile.in
js/src/config/mkdepend/cppsetup.c
js/src/config/mkdepend/def.h
js/src/config/mkdepend/ifparser.c
js/src/config/mkdepend/ifparser.h
js/src/config/mkdepend/imakemdep.h
js/src/config/mkdepend/include.c
js/src/config/mkdepend/main.c
js/src/config/mkdepend/mkdepend.man
js/src/config/mkdepend/parse.c
js/src/config/mkdepend/pr.c
js/src/config/rules.mk
js/src/configure.in
toolkit/mozapps/installer/packager.mk
--- a/allmakefiles.sh
+++ b/allmakefiles.sh
@@ -102,22 +102,16 @@ if [ "$OS_ARCH" != "WINNT" -a "$OS_ARCH"
   fi
   if [ "$USE_ELF_HACK" ]; then
     add_makefiles "
       build/unix/elfhack/Makefile
     "
   fi
 fi
 
-if [ "$COMPILER_DEPEND" = "" -a "$MOZ_NATIVE_MAKEDEPEND" = "" ]; then
-  add_makefiles "
-    config/mkdepend/Makefile
-  "
-fi
-
 if [ "$ENABLE_MARIONETTE" ]; then
   add_makefiles "
     testing/marionette/Makefile
     testing/marionette/components/Makefile
   "
 fi
 
 if [ "$ENABLE_TESTS" ]; then
--- a/config/Makefile.in
+++ b/config/Makefile.in
@@ -39,22 +39,16 @@ endif
 ifdef NSBUILDROOT
 override NSBUILDROOT :=
 endif
 
 ifdef GNU_CC
 MODULE_OPTIMIZE_FLAGS = -O3
 endif
 
-ifndef COMPILER_DEPEND
-ifndef MOZ_NATIVE_MAKEDEPEND
-DIRS		+= mkdepend
-endif
-endif
-
 include $(topsrcdir)/config/config.mk
 
 # Do not install util programs
 NO_INSTALL=1
 
 include $(topsrcdir)/config/rules.mk
 
 HOST_CFLAGS += -DUNICODE -D_UNICODE
@@ -140,23 +134,16 @@ ifndef CROSS_COMPILE
 ifdef USE_ELF_DYNSTR_GC
 elf-dynstr-gc: elf-dynstr-gc.c $(GLOBAL_DEPS)
 	$(CC) $(COMPILE_CFLAGS) $(GLIB_CFLAGS) -o $@ $< $(LDFLAGS) $(GLIB_LIBS) 
 endif
 endif
 
 FORCE:
 
-ifndef COMPILER_DEPEND
-ifdef MKDEPEND_DIR
-clean clobber realclean clobber_all::
-	cd $(MKDEPEND_DIR); $(MAKE) $@
-endif
-endif
-
 PYUNITS := \
   unit-Expression.py \
   unit-Preprocessor.py \
   unit-nsinstall.py \
   unit-printprereleasesuffix.py \
   unit-JarMaker.py \
   unit-buildlist.py \
   unit-expandlibs.py \
--- a/config/config.mk
+++ b/config/config.mk
@@ -574,24 +574,16 @@ endif # MOZ_OPTIMIZE
 endif # OS_ARCH=Darwin
 
 ifdef MOZ_USING_CCACHE
 ifdef CLANG_CXX
 export CCACHE_CPP2=1
 endif
 endif
 
-ifdef MOZ_NATIVE_MAKEDEPEND
-MKDEPEND_DIR =
-MKDEPEND = $(MOZ_NATIVE_MAKEDEPEND)
-else
-MKDEPEND_DIR = $(CONFIG_TOOLS)/mkdepend
-MKDEPEND = $(MKDEPEND_DIR)/mkdepend$(BIN_SUFFIX)
-endif
-
 # Set link flags according to whether we want a console.
 ifdef MOZ_WINCONSOLE
 ifeq ($(MOZ_WINCONSOLE),1)
 ifeq ($(OS_ARCH),OS2)
 BIN_FLAGS	+= -Zlinker -PM:VIO
 endif
 ifeq ($(OS_ARCH),WINNT)
 ifdef GNU_CC
@@ -627,17 +619,17 @@ endif
 #
 # Include any personal overrides the user might think are needed.
 #
 -include $(topsrcdir)/$(MOZ_BUILD_APP)/app-config.mk
 -include $(MY_CONFIG)
 
 ######################################################################
 
-GARBAGE		+= $(DEPENDENCIES) $(MKDEPENDENCIES) $(MKDEPENDENCIES).bak core $(wildcard core.[0-9]*) $(wildcard *.err) $(wildcard *.pure) $(wildcard *_pure_*.o) Templates.DB
+GARBAGE		+= $(DEPENDENCIES) core $(wildcard core.[0-9]*) $(wildcard *.err) $(wildcard *.pure) $(wildcard *_pure_*.o) Templates.DB
 
 ifeq ($(OS_ARCH),Darwin)
 ifndef NSDISTMODE
 NSDISTMODE=absolute_symlink
 endif
 PWD := $(CURDIR)
 endif
 
@@ -751,16 +743,19 @@ ifdef TIERS
 DIRS += $(foreach tier,$(TIERS),$(tier_$(tier)_dirs))
 STATIC_DIRS += $(foreach tier,$(TIERS),$(tier_$(tier)_staticdirs))
 endif
 
 OPTIMIZE_JARS_CMD = $(PYTHON) $(call core_abspath,$(topsrcdir)/config/optimizejars.py)
 
 CREATE_PRECOMPLETE_CMD = $(PYTHON) $(call core_abspath,$(topsrcdir)/config/createprecomplete.py)
 
+# MDDEPDIR is the subdirectory where dependency files are stored
+MDDEPDIR := .deps
+
 EXPAND_LIBS_EXEC = $(PYTHON) $(topsrcdir)/config/pythonpath.py -I$(DEPTH)/config $(topsrcdir)/config/expandlibs_exec.py $(if $@,--depend $(MDDEPDIR)/$(@F).pp --target $@)
 EXPAND_LIBS_GEN = $(PYTHON) $(topsrcdir)/config/pythonpath.py -I$(DEPTH)/config $(topsrcdir)/config/expandlibs_gen.py $(if $@,--depend $(MDDEPDIR)/$(@F).pp)
 EXPAND_AR = $(EXPAND_LIBS_EXEC) --extract -- $(AR)
 EXPAND_CC = $(EXPAND_LIBS_EXEC) --uselist -- $(CC)
 EXPAND_CCC = $(EXPAND_LIBS_EXEC) --uselist -- $(CCC)
 EXPAND_LD = $(EXPAND_LIBS_EXEC) --uselist -- $(LD)
 EXPAND_MKSHLIB_ARGS = --uselist
 ifdef SYMBOL_ORDER
deleted file mode 100644
--- a/config/makedep.cpp
+++ /dev/null
@@ -1,853 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-// Dependency building hack
-//
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <sys/stat.h>
-#include <ctype.h>
-#include <afxcoll.h>
-#include <afxtempl.h>
-
-int mainReturn = 0;
-BOOL b16 = FALSE;
-BOOL bSimple = FALSE;
-
-FILE *pAltFile = stdout;
-
-CStringArray includeDirectories;
-
-// turn a file, relative path or other into an absolute path
-// This function copied from MFC 1.52
-BOOL PASCAL _AfxFullPath(LPSTR lpszPathOut, LPCSTR lpszFileIn)
-        // lpszPathOut = buffer of _MAX_PATH
-        // lpszFileIn = file, relative path or absolute path
-        // (both in ANSI character set)
-{
-        OFSTRUCT of;
-        if (OpenFile(lpszFileIn, &of, OF_PARSE) != HFILE_ERROR)
-        {
-                // of.szPathName is in the OEM character set
-                OemToAnsi(of.szPathName, lpszPathOut);
-                AnsiUpper(lpszPathOut); // paths in upper case just to be sure
-                return TRUE;
-        }
-        else
-        {
-                TRACE1("Warning: could not parse the path %Fs\n", lpszFileIn);
-                lstrcpy(lpszPathOut, lpszFileIn);  // take it literally
-                AnsiUpper(lpszPathOut); // paths in upper case just to be sure
-                return FALSE;
-        }
-}
-
-void AddIncludeDirectory( char *pString ){
-    CString s = pString;
-	int len = s.GetLength();
-    if(len > 0 && s[len - 1] != '\\' ){
-        s += "\\";
-    }
-    includeDirectories.Add(s);
-}
-
-BOOL FileExists( const char *pString ){
-    struct _stat buf;
-    int result;
-
-    result = _stat( pString, &buf );
-    return (result == 0);
-}
-
-void FixPathName(CString& str) {
-	str.MakeUpper();		// all upper case
-
-	// now switch all forward slashes to back slashes
-	int index;
-	while ((index = str.Find('/')) != -1) {
-		str.SetAt(index, '\\');
-	}
-}
-
-void FATName(CString& csLONGName)
-{
-    //  Only relevant for 16 bits.
-    if(b16) {
-        //  Convert filename to FAT (8.3) equivalent.
-        char aBuffer[2048];
-
-        if(GetShortPathName(csLONGName, aBuffer, 2048)) {
-            csLONGName = aBuffer;
-        }
-    }
-}
-
-
-class CFileRecord {
-public:
-    CString m_shortName;
-    CString m_pathName;
-    CPtrArray m_includes;  // pointers to CFileRecords in fileMap
-    BOOL m_bVisited;
-    BOOL m_bSystem;
-    BOOL m_bSource;
-    static CMapStringToPtr fileMap;      // contains all allocated CFileRecords
-    static CStringArray orderedFileNames;
-    static CMapStringToPtr includeMap;   // pointer to CFileRecords in fileMap
-    static CMapStringToPtr noDependMap;
-
-    CFileRecord( const char *shortName, const char* pFullName, BOOL bSystem, BOOL bSource):
-                m_shortName( shortName ),
-                m_pathName(),
-                m_includes(),
-                m_bVisited(FALSE),
-                m_bSource( bSource ),
-                m_bSystem(bSystem){
-
-		m_pathName = pFullName;
-		FixPathName(m_pathName);				// all upper case for consistency
-		ASSERT(FindFileRecord(m_pathName) == NULL);	// make sure it's not already in the map
-        fileMap[m_pathName] = this;			// add this to the filemap, using the appropriate name as the key
-		if (bSource) {
-			orderedFileNames.Add(m_pathName);	// remember the order we saw source files in
-		}
-    }
-
-    // 
-    // open the file and grab all the includes.
-    //
-    void ProcessFile(){
-        FILE *f;
-		CString fullName;
-        BOOL bSystem;
-		DWORD lineCntr = 0;
-		char *a = new char[2048];
-        memset(a, 0, 2048);
-		char srcPath[_MAX_PATH];
-
-		// construct the full path
-		if (!_AfxFullPath(srcPath, m_pathName)) {
-			strcpy(srcPath, m_pathName);
-		}
-
-		// strip off the source filename to end up with just the path
-		LPSTR pTemp = strrchr(srcPath, '\\');
-		if (pTemp) {
-			*(pTemp + 1) = 0;
-		}
-
-        f = fopen(m_pathName, "r");
-        if(f != NULL && f != (FILE *)-1)  {
-			setvbuf(f, NULL, _IOFBF, 32768);		// use a large file buffer
-            while(fgets(a, 2047, f)) {
-				// if the string "//{{NO_DEPENDENCIES}}" is at the start of one of the 
-				// first 10 lines of a file, don't build dependencies on it or any
-				// of the files it includes
-				if (lineCntr < 10) {
-					static char* pDependStr = "//{{NO_DEPENDENCIES}}";
-					if (strncmp(a, pDependStr, strlen(pDependStr)) == 0) {
-						noDependMap[m_pathName] = 0;	// add it to the noDependMap
-						break;							// no need for further processing of this file
-					}
-				}
-				++lineCntr;
-				// have to handle a variety of legal syntaxes that we find in our source files:
-				//    #include
-				// #   include
-                // #include
-				// if the first non-whitespace char is a '#', consider this line
-				pTemp = a;
-				pTemp += strspn(pTemp, " \t");			// skip whitespace
-				if (*pTemp == '#') {
-					++pTemp;							// skip the '#'
-					pTemp += strspn(pTemp, " \t");		// skip more whitespace
-					if( !strncmp(pTemp, "include", 7) ){
-						pTemp += 7;						// skip the "include"
-						pTemp += strspn(pTemp, " \t");	// skip more whitespace
-						bSystem = (*pTemp == '<');		// mark if it's a system include or not
-                        // forget system files -- we just have to search all the paths
-                        // every time and never find them! This change alone speeds a full
-                        // depend run on my system from 5 minutes to 3:15
-						// if (bSystem || (*pTemp == '"')) {
-                        if (*pTemp == '"') {
-							LPSTR pStart = pTemp + 1;	// mark the start of the string
-							pTemp = pStart + strcspn(pStart, ">\" ");	// find the end of the string
-							*pTemp = 0;					// terminate the string
-
-							// construct the full pathname from the path part of the 
-							// source file and the name listed here
-							fullName = srcPath;
-							fullName += pStart;
-							CFileRecord *pAddMe = AddFile( pStart, fullName, bSystem );
-							if (pAddMe) {
-								m_includes.Add(pAddMe);
-							}
-						}
-					}
-				}
-            }
-            fclose(f);
-        }
-        delete [] a;
-    }
-
-    void PrintIncludes(){
-        int i = 0;
-        while( i < m_includes.GetSize() ){
-            CFileRecord *pRec = (CFileRecord*) m_includes[i];
-
-            //  Don't write out files that don't exist or are not in the namespace
-            //      of the programs using it (netscape_AppletMozillaContext.h doesn't
-            //      mix well with 16 bits).
-			// Also don't write out files that are in the noDependMap
-			void*	lookupJunk;
-            if( !pRec->m_bVisited && pRec->m_pathName.GetLength() != 0 && !noDependMap.Lookup(pRec->m_pathName, lookupJunk)) {
-
-				// not supposed to have a file in the list that doesn't exist
-				ASSERT(FileExists(pRec->m_pathName));
-
-                CString csOutput;
-                csOutput = pRec->m_pathName;
-                FATName(csOutput);
-
-				fprintf(pAltFile, "\\\n    %s ", (const char *) csOutput );
-
-				// mark this one as done so we don't do it more than once
-                pRec->m_bVisited = TRUE;
-
-                pRec->PrintIncludes();
-            }
-            i++;
-        }
-    }
-
-    void PrintDepend(){
-        CFileRecord *pRec;
-        BOOL bFound;
-        POSITION next;
-        CString name;
-
-		// clear all the m_bVisisted flags so we can use it to keep track
-		// of whether we've already output this file as a dependency
-        next = fileMap.GetStartPosition();
-        while( next ){
-            fileMap.GetNextAssoc( next, name, *(void**)&pRec );
-            pRec->m_bVisited = FALSE;
-        }
-
-        char fname[_MAX_FNAME];
-
-		if (pRec->m_pathName.GetLength() != 0) {
-            if( bSimple ){
-    			fprintf(pAltFile, "\n\n\n%s:\t", m_pathName );
-            }
-            else {
-                CString csOutput;
-                csOutput = m_pathName;
-                FATName(csOutput);
-
-    			_splitpath( csOutput, NULL, NULL, fname, NULL );
-
-    			fprintf(pAltFile, "\n\n\n$(OUTDIR)\\%s.obj: %s ", fname, (const char*) csOutput );
-            }
-	        m_bVisited = TRUE;		// mark it as done so we won't do it again
-	        PrintIncludes();
-		}
-    }
-
-
-    static CString NormalizeFileName( const char* pName ){
-        return CString(pName);
-    }
-
-    static CFileRecord* FindFileRecord( const char *pName ){
-		CFileRecord* pRec = NULL;
-		CString name(pName);
-		FixPathName(name);
-		fileMap.Lookup(name, (void*&)pRec);
-		return(pRec);
-    }
-public:
-    static CFileRecord* AddFile( const char* pShortName, const char* pFullName, BOOL bSystem = FALSE, 
-                BOOL bSource = FALSE ){
-
-		char fullName[_MAX_PATH];
-		BOOL bFound = FALSE;
-		CString foundName;
-		CString fixedShortName;
-        CString s;
-
-        // normalize the name
-        fixedShortName = pShortName;
-        FixPathName(fixedShortName);
-        pShortName = fixedShortName;
-
-        // if it is source, we might be getting an obj file.  If we do,
-        //  convert it to a c or c++ file.
-        if( bSource && (strcmp(GetExt(pShortName),".obj") == 0) ){
-            char path_buffer[_MAX_PATH];
-            char fname[_MAX_FNAME] = "";
-            CString s;
-
-            _splitpath( pShortName, NULL, NULL, fname, NULL );
-            if( FileExists( s = CString(fname) + ".cpp") ){
-                pShortName = s;
-                pFullName = s;
-            }
-            else if( FileExists( s = CString(fname) + ".c" ) ){
-                pShortName = s;
-                pFullName = s;
-            }
-            else {
-                return 0;
-            }
-        }
-
-		// if pFullName was not constructed, construct it here based on the current directory
-		if (!pFullName) {
-			_AfxFullPath(fullName, pShortName);
-			pFullName = fullName;
-		}
-		
-		// first check to see if we already have this exact file
-		CFileRecord *pRec = FindFileRecord(pFullName);
-
-        // if not found and not a source file check the header list --
-        // all files we've found in include directories are in the includeMap.
-        // we can save gobs of time by getting it from there
-        if (!pRec && !bSource)
-            includeMap.Lookup(fixedShortName, (void*&)pRec);
-
-        if (!pRec) {
-            // not in one of our lists, start scrounging on disk
-
-            // check the fullname first
-            if (FileExists(pFullName)) {
-                foundName = pFullName;
-                bFound = TRUE;
-            }
-            else {
-                // if still not found, search the include paths
-                int i = 0;
-                while( i < includeDirectories.GetSize() ){
-                    if( FileExists( includeDirectories[i] + pShortName ) ){
-                        foundName = includeDirectories[i] + pShortName;
-                        bFound = TRUE;
-                        break;
-                    }
-                    i++;
-                }
-            }
-        }
-        else {
-            // we found it
-            bFound = TRUE;
-        }
-
-		// source files are not allowed to be missing
-		if (bSource && !pRec && !bFound) {
-			fprintf(stderr, "Source file: %s doesn't exist\n", pFullName);
-			mainReturn = -1;		// exit with an error, don't write out the results
-		}
-
-#ifdef _DEBUG
-		if (!pRec && !bFound && !bSystem) {
-			fprintf(stderr, "Header not found: %s (%s)\n", pShortName, pFullName);
-		}
-#endif
-
-		// if none of the above logic found it already in the list, 
-        // must be a new file, add it to the list
-        if (bFound && (pRec == NULL)) {
-            pRec = new CFileRecord( pShortName, foundName, bSystem, bSource);
-
-			// if this one isn't a source file add it to the includeMap
-			// for performance reasons (so we can find it there next time rather
-			// than having to search the file system again)
-			if (!bSource) {
-				includeMap[pShortName] = pRec;
-			}
-        }
-        return pRec;
-    }
-
-
-    static void PrintDependancies(){
-        CFileRecord *pRec;
-        BOOL bFound;
-        POSITION next;
-        CString name;
-
-		// use orderedFileNames to preserve order
-		for (int pos = 0; pos < orderedFileNames.GetSize(); pos++) {
-			pRec = FindFileRecord(orderedFileNames[pos]);
-            if(pRec && pRec->m_bSource ){
-                pRec->PrintDepend();
-			}
-		}
-    }
-
-
-    void PrintDepend2(){
-        CFileRecord *pRec;
-        int i;
-
-        if( m_includes.GetSize() != 0 ){
-			fprintf(pAltFile, "\n\n\n%s: \\\n",m_pathName );
-            i = 0;
-            while( i < m_includes.GetSize() ){
-                pRec = (CFileRecord*) m_includes[i];
-    			fprintf(pAltFile, "\t\t\t%s\t\\\n",pRec->m_pathName );
-                i++;
-            }
-        }
-    }
-
-    static void PrintDependancies2(){
-        CFileRecord *pRec;
-        BOOL bFound;
-        POSITION next;
-        CString name;
-
-        next = fileMap.GetStartPosition();
-        while( next ){
-            fileMap.GetNextAssoc( next, name, *(void**)&pRec );
-            pRec->PrintDepend2();
-        }
-    }
-
-
-    static void PrintTargets(const char *pMacroName, const char *pDelimiter){
-        CFileRecord *pRec;
-        BOOL bFound;
-        POSITION next;
-        CString name;
-
-        BOOL bNeedDelimiter = FALSE;
-		fprintf(pAltFile, "%s = ", pMacroName);        
-
-		// use orderedFileNames to preserve target order
-		for (int pos = 0; pos < orderedFileNames.GetSize(); pos++) {
-			pRec = FindFileRecord(orderedFileNames[pos]);
-			ASSERT(pRec);
-
-            if( pRec && pRec->m_bSource && pRec->m_pathName.GetLength() != 0){
-                char fname[_MAX_FNAME];
-
-                CString csOutput;
-                csOutput = pRec->m_pathName;
-                FATName(csOutput);
-
-                _splitpath( csOutput, NULL, NULL, fname, NULL );
-
-                if(bNeedDelimiter)  {
-                    fprintf(pAltFile, "%s\n", pDelimiter);
-                    bNeedDelimiter = FALSE;
-                }
-
-				fprintf(pAltFile, "     $(OUTDIR)\\%s.obj   ", fname );
-                bNeedDelimiter = TRUE;
-            }
-        }
-		fprintf(pAltFile, "\n\n\n");        
-    }
-
-    static CString DirDefine( const char *pPath ){
-        char path_buffer[_MAX_PATH];
-        char dir[_MAX_DIR] = "";
-        char dir2[_MAX_DIR] = "";
-        char fname[_MAX_FNAME] = "";
-        char ext[_MAX_EXT] = "";
-        CString s;
-
-        _splitpath( pPath, 0, dir, 0, ext );
-
-        BOOL bDone = FALSE;
-
-        while( dir && !bDone){
-            // remove the trailing slash
-            dir[ strlen(dir)-1] = 0;
-            _splitpath( dir, 0, dir2, fname, 0 );
-            if( strcmp( fname, "SRC" ) == 0 ){
-                strcpy( dir, dir2 );
-            }
-            else {
-                bDone = TRUE;
-            }
-        }
-        s = CString(fname) + "_" + (ext+1);
-        return s;
-    }
-
-
-    static void PrintSources(){
-        int i;
-        CString dirName, newDirName;
-
-        for( i=0; i< orderedFileNames.GetSize(); i++ ){
-            newDirName= DirDefine( orderedFileNames[i] );
-            if( newDirName != dirName ){
-                fprintf( pAltFile, "\n\n\nFILES_%s= $(FILES_%s) \\", 
-                        (const char*)newDirName, (const char*)newDirName );
-                dirName = newDirName;
-            }
-            fprintf( pAltFile, "\n\t%s^", (const char*)orderedFileNames[i] );
-        }
-    }
-
-    static CString SourceDirName( const char *pPath, BOOL bFileName){
-        char path_buffer[_MAX_PATH];
-        char drive[_MAX_DRIVE] = "";
-        char dir[_MAX_DIR] = "";
-        char fname[_MAX_FNAME] = "";
-        char ext[_MAX_EXT] = "";
-        CString s;
-
-        _splitpath( pPath, drive, dir, fname, ext );
-
-        s = CString(drive) + dir;
-        if( bFileName ){
-            s += CString("FNAME") + ext;
-        }
-        else {
-            // remove the trailing slash
-            s = s.Left( s.GetLength() - 1 );
-        }
-        return s;
-    }
-
-
-    static CString GetExt( const char *pPath){
-        char ext[_MAX_EXT] = "";
-
-        _splitpath( pPath, 0,0,0, ext );
-
-        CString s = CString(ext);
-        s.MakeLower();
-        return s;
-    }
-
-    static void PrintBuildRules(){
-        int i;
-        CString dirName;
-        
-        CMapStringToPtr dirList;
-
-        for( i=0; i< orderedFileNames.GetSize(); i++ ){
-            dirList[ SourceDirName(orderedFileNames[i], TRUE) ]= 0;
-        }
-
-        POSITION next;
-        CString name;
-        void *pVal;
-
-        next = dirList.GetStartPosition();
-        while( next ){
-            dirList.GetNextAssoc( next, name, pVal);
-            CString dirDefine = DirDefine( name );
-            CString ext = GetExt( name );
-            name = SourceDirName( name, FALSE );
-            CString response = dirDefine.Left(8);
-
-            fprintf( pAltFile, 
-                "\n\n\n{%s}%s{$(OUTDIR)}.obj:\n"
-                "\t@rem <<$(OUTDIR)\\%s.cl\n"
-                "\t$(CFILEFLAGS)\n"
-                "\t$(CFLAGS_%s)\n"
-                "<<KEEP\n"
-                "\t$(CPP) @$(OUTDIR)\\%s.cl %%s\n",
-                (const char*)name,
-                (const char*)ext,
-                (const char*)response,
-                (const char*)dirDefine,
-                (const char*)response
-            );
-
-            fprintf( pAltFile, 
-                "\n\n\nBATCH_%s:\n"
-                "\t@rem <<$(OUTDIR)\\%s.cl\n"
-                "\t$(CFILEFLAGS)\n"
-                "\t$(CFLAGS_%s)\n"
-                "\t$(FILES_%s)\n"
-                "<<KEEP\n"
-                "\t$(TIMESTART)\n"
-                "\t$(CPP) @$(OUTDIR)\\%s.cl\n"
-                "\t$(TIMESTOP)\n",
-                (const char*)dirDefine,
-                (const char*)response,
-                (const char*)dirDefine,
-                (const char*)dirDefine,
-                (const char*)response
-            );
-        }
-
-        //
-        // Loop through one more time and build the final batch build
-        //  rule
-        //
-        fprintf( pAltFile, 
-            "\n\n\nBATCH_BUILD_OBJECTS:\t\t\\\n");
-
-        next = dirList.GetStartPosition();
-        while( next ){
-            dirList.GetNextAssoc( next, name, pVal);
-            CString dirDefine = DirDefine( name );
-
-            fprintf( pAltFile, 
-                "\tBATCH_%s\t\t\\\n", dirDefine );
-        }
-
-        fprintf( pAltFile, 
-            "\n\n");
-    }
-        
-
-    static void ProcessFiles(){
-        CFileRecord *pRec;
-        BOOL bFound;
-        POSITION next;
-        CString name;
-
-		// search all the files for headers, adding each one to the list when found
-		// rather than do it recursively, it simple marks each one it's done
-		// and starts over, stopping only when all are marked as done
-
-        next = fileMap.GetStartPosition();
-        while( next ){
-            fileMap.GetNextAssoc( next, name, *(void**)&pRec );
-            if( pRec->m_bVisited == FALSE && pRec->m_bSystem == FALSE ){
-				// mark this file as already done so we don't read it again
-				// to find its headers
-                pRec->m_bVisited = TRUE;
-                pRec->ProcessFile();
-                // Start searching from the beginning again
-				// because ProcessFile may have added new files 
-				// and changed the GetNextAssoc order
-                next = fileMap.GetStartPosition();       
-
-            }
-        }
-    }
-
-
-};
-
-CMapStringToPtr CFileRecord::fileMap;           // contains all allocated CFileRecords
-CStringArray CFileRecord::orderedFileNames;
-CMapStringToPtr CFileRecord::includeMap;        // pointers to CFileRecords in fileMap
-CMapStringToPtr CFileRecord::noDependMap;       // no data, just an index
-
-int main( int argc, char** argv ){
-    int i = 1;
-    char *pStr;
-    static int iRecursion = 0;	//	Track levels of recursion.
-	static CString outputFileName;
-    
-    //	Entering.
-    iRecursion++;
-
-    while( i < argc ){
-        if( argv[i][0] == '-' || argv[i][0] == '/' ){
-            switch( argv[i][1] ){
-
-            case 'i':
-            case 'I':
-                if( argv[i][2] != 0 ){
-                    pStr = &(argv[i][2]);
-                }
-                else {
-                    i++;
-                    pStr = argv[i];
-                }
-                if( pStr == 0 || *pStr == '-' || *pStr == '/' ){
-                    goto usage;
-                }
-                else {
-                    AddIncludeDirectory( pStr );
-                }
-                break;
-
-            case 'f':
-            case 'F':
-                if( argv[i][2] != 0 ){
-                    pStr = &(argv[i][2]);
-                }
-                else {
-                    i++;
-                    pStr = argv[i];
-                }
-                if( pStr == 0 || *pStr == '-' || *pStr == '/'){
-                    goto usage;
-                }
-                else {
-                    CStdioFile f;
-                    CString s;
-                    if( f.Open( pStr, CFile::modeRead ) ){
-                        while(f.ReadString(s)){
-                            s.TrimLeft();
-                            s.TrimRight();
-                            if( s.GetLength() ){
-                                CFileRecord::AddFile( s, NULL, FALSE, TRUE );
-                            }
-                        } 
-                        f.Close();
-                    }
-                    else {
-                        fprintf(stderr,"makedep: file not found: %s", pStr );
-                        exit(-1);
-                    }
-                }
-                break;
-
-            case 'o':
-            case 'O':
-                if( argv[i][2] != 0 ){
-                    pStr = &(argv[i][2]);
-                }
-                else {
-                    i++;
-                    pStr = argv[i];
-                }
-                if( pStr == 0 || *pStr == '-' || *pStr == '/'){
-                    goto usage;
-                }
-                else {
-                    CStdioFile f;
-                    CString s;
-					outputFileName = pStr;
-					if(!(pAltFile = fopen(pStr, "w+")))	{
-                        fprintf(stderr, "makedep: file not found: %s", pStr );
-                        exit(-1);
-                    }
-                }
-                break;
-
-            case '1':
-                if( argv[i][2] == '6')  {
-                    b16 = TRUE;
-                }
-                break;
-
-            case 's':
-            case 'S':
-                bSimple = TRUE;
-                break;
-
-
-
-            case 'h':
-            case 'H':
-            case '?':
-            usage:
-                fprintf(stderr, "usage: makedep -I <dirname> -F <filelist> <filename>\n"
-                       "  -I <dirname>    Directory name, can be repeated\n"
-                       "  -F <filelist>   List of files to scan, one per line\n"
-                       "  -O <outputFile> File to write output, default stdout\n");
-                exit(-1);
-            }
-        }
-        else if( argv[i][0] == '@' ){
-        	//	file contains our commands.
-	        CStdioFile f;
-    	    CString s;
-    	    int iNewArgc = 0;
-    	    char **apNewArgv = new char*[5000];
-			memset(apNewArgv, 0, sizeof(apNewArgv));
-
-			//	First one is always the name of the exe.
-			apNewArgv[0] = argv[0];
-			iNewArgc++;
-
-			const char *pTraverse;
-			const char *pBeginArg;
-	        if( f.Open( &argv[i][1], CFile::modeRead ) ){
-    	        while( iNewArgc < 5000 && f.ReadString(s) )	{
-					//	Scan the string for args, and do the right thing.
-					pTraverse = (const char *)s;
-					while(iNewArgc < 5000 && *pTraverse)	{
-						if(isspace(*pTraverse))	{
-								pTraverse++;
-								continue;
-						}
-
-						//	Extract to next space.
-						pBeginArg = pTraverse;
-						do	{
-							pTraverse++;
-						}
-						while(*pTraverse && !isspace(*pTraverse));
-						apNewArgv[iNewArgc] = new char[pTraverse - pBeginArg + 1];
-						memset(apNewArgv[iNewArgc], 0, pTraverse - pBeginArg + 1);
-						strncpy(apNewArgv[iNewArgc], pBeginArg, pTraverse - pBeginArg);
-						iNewArgc++;
-					}
-	            } 
-    	        f.Close();
-        	}
-        	
-        	//	Recurse if needed.
-        	if(iNewArgc > 1)	{
-        		main(iNewArgc, apNewArgv);
-        	}
-        	
-        	//	Free off the argvs (but not the very first one which we didn't allocate).
-        	while(iNewArgc > 1)	{
-        		iNewArgc--;
-        		delete [] apNewArgv[iNewArgc];
-        	}
-        	delete [] apNewArgv;
-        }
-        else {
-            CFileRecord::AddFile( argv[i], NULL, FALSE, TRUE );
-        }
-        i++;
-    }
-    
-    //	Only of the very bottom level of recursion do we do this.
-    if(iRecursion == 1)	{
-
-		// only write the results out if no errors encountered
-		if (mainReturn == 0) {
-			CFileRecord::ProcessFiles();
-            if( !bSimple ){
-        		CFileRecord::PrintTargets("OBJ_FILES", "\\");
-                if(b16) {
-    			    CFileRecord::PrintTargets("LINK_OBJS", "+\\");
-                }
-                else    {
-    			    CFileRecord::PrintTargets("LINK_OBJS", "^");
-                }
-                CFileRecord::PrintSources();
-                CFileRecord::PrintBuildRules();
-            }
-    		CFileRecord::PrintDependancies();
-		}
-	    
-		if(pAltFile != stdout)	{
-			fclose(pAltFile);
-			if (mainReturn != 0) {
-				remove(outputFileName);	// kill output file if returning an error
-			}
-		}
-	}
-	iRecursion--;
-
-    if (iRecursion == 0 )
-    {
-        // last time through -- clean up allocated CFileRecords!
-        CFileRecord *pFRec;
-        CString     name;
-        POSITION    next;
-
-        next = CFileRecord::fileMap.GetStartPosition();
-        while( next ){
-            CFileRecord::fileMap.GetNextAssoc( next, name, *(void**)&pFRec );
-            delete pFRec;
-        }
-    }
-
-    return mainReturn;
-}
deleted file mode 100755
index f56cde80a5947f18fb9e22b7015aa3d607894a2a..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
--- a/config/mkdepend/Makefile.in
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-DEPTH		= @DEPTH@
-topsrcdir	= @top_srcdir@
-srcdir		= @srcdir@
-VPATH		= @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-USE_STATIC_LIBS = 1
-
-MODULE		 = mkdepend
-HOST_PROGRAM	 = mkdepend$(BIN_SUFFIX)
-ifdef GNU_CC
-MODULE_OPTIMIZE_FLAGS = -O3
-else
-ifeq ($(OS_ARCH),SunOS)
-MODULE_OPTIMIZE_FLAGS = -fast
-endif
-endif
-
-ifeq ($(OS_ARCH),WINNT)
-ifndef GNU_CC
-MODULE_OPTIMIZE_FLAGS = -Ox
-endif
-endif
-
-HOST_CSRCS	= \
-		cppsetup.c \
-		ifparser.c \
-		include.c \
-		main.c \
-		parse.c \
-		pr.c \
-		$(NULL)
-
-include $(topsrcdir)/config/rules.mk
-
-HOST_CFLAGS	+= -DINCLUDEDIR=\"/usr/include\" -DOBJSUFFIX=\".$(OBJ_SUFFIX)\"
-
-ifdef GNU_CC
-_GCCDIR		= $(shell $(CC) -print-file-name=include)
-HOST_CFLAGS	+= -DPREINCDIR=\"$(_GCCDIR)\"
-endif
-
-export:: $(HOST_PROGRAM)
-
-$(HOST_OBJS): def.h ifparser.h imakemdep.h
deleted file mode 100644
--- a/config/mkdepend/cppsetup.c
+++ /dev/null
@@ -1,233 +0,0 @@
-/* $Xorg: cppsetup.c,v 1.5 2001/02/09 02:03:16 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/makedepend/cppsetup.c,v 3.11 2001/12/17 20:52:22 dawes Exp $ */
-
-#include "def.h"
-
-#ifdef	CPP
-/*
- * This file is strictly for the sake of cpy.y and yylex.c (if
- * you indeed have the source for cpp).
- */
-#define IB 1
-#define SB 2
-#define NB 4
-#define CB 8
-#define QB 16
-#define WB 32
-#define SALT '#'
-#if defined(pdp11) || defined(vax) || defined(ns16000) || defined(mc68000) || defined(ibm032)
-#define COFF 128
-#else
-#define COFF 0
-#endif
-/*
- * These variables used by cpy.y and yylex.c
- */
-extern char	*outp, *inp, *newp, *pend;
-extern char	*ptrtab;
-extern char	fastab[];
-extern char	slotab[];
-
-/*
- * cppsetup
- */
-struct filepointer	*currentfile;
-struct inclist		*currentinc;
-
-int
-cppsetup(char *line, struct filepointer *filep, struct inclist *inc)
-{
-	char *p, savec;
-	static boolean setupdone = FALSE;
-	boolean	value;
-
-	if (!setupdone) {
-		cpp_varsetup();
-		setupdone = TRUE;
-	}
-
-	currentfile = filep;
-	currentinc = inc;
-	inp = newp = line;
-	for (p=newp; *p; p++)
-		;
-
-	/*
-	 * put a newline back on the end, and set up pend, etc.
-	 */
-	*p++ = '\n';
-	savec = *p;
-	*p = '\0';
-	pend = p;
-
-	ptrtab = slotab+COFF;
-	*--inp = SALT; 
-	outp=inp; 
-	value = yyparse();
-	*p = savec;
-	return(value);
-}
-
-struct symtab **lookup(symbol)
-	char	*symbol;
-{
-	static struct symtab    *undefined;
-	struct symtab   **sp;
-
-	sp = isdefined(symbol, currentinc, NULL);
-	if (sp == NULL) {
-		sp = &undefined;
-		(*sp)->s_value = NULL;
-	}
-	return (sp);
-}
-
-pperror(tag, x0,x1,x2,x3,x4)
-	int	tag,x0,x1,x2,x3,x4;
-{
-	warning("\"%s\", line %d: ", currentinc->i_file, currentfile->f_line);
-	warning(x0,x1,x2,x3,x4);
-}
-
-
-yyerror(s)
-	register char	*s;
-{
-	fatalerr("Fatal error: %s\n", s);
-}
-#else /* not CPP */
-
-#include "ifparser.h"
-struct _parse_data {
-    struct filepointer *filep;
-    struct inclist *inc;
-    char *filename;
-    const char *line;
-};
-
-static const char *
-my_if_errors (IfParser *ip, const char *cp, const char *expecting)
-{
-    struct _parse_data *pd = (struct _parse_data *) ip->data;
-    int lineno = pd->filep->f_line;
-    char *filename = pd->filename;
-    char prefix[300];
-    int prefixlen;
-    int i;
-
-    sprintf (prefix, "\"%s\":%d", filename, lineno);
-    prefixlen = strlen(prefix);
-    fprintf (stderr, "%s:  %s", prefix, pd->line);
-    i = cp - pd->line;
-    if (i > 0 && pd->line[i-1] != '\n') {
-	putc ('\n', stderr);
-    }
-    for (i += prefixlen + 3; i > 0; i--) {
-	putc (' ', stderr);
-    }
-    fprintf (stderr, "^--- expecting %s\n", expecting);
-    return NULL;
-}
-
-
-#define MAXNAMELEN 256
-
-static struct symtab **
-lookup_variable (IfParser *ip, const char *var, int len)
-{
-    char tmpbuf[MAXNAMELEN + 1];
-    struct _parse_data *pd = (struct _parse_data *) ip->data;
-
-    if (len > MAXNAMELEN)
-	return 0;
-
-    strncpy (tmpbuf, var, len);
-    tmpbuf[len] = '\0';
-    return isdefined (tmpbuf, pd->inc, NULL);
-}
-
-
-static int
-my_eval_defined (IfParser *ip, const char *var, int len)
-{
-    if (lookup_variable (ip, var, len))
-	return 1;
-    else
-	return 0;
-}
-
-#define isvarfirstletter(ccc) (isalpha(ccc) || (ccc) == '_')
-
-static long
-my_eval_variable (IfParser *ip, const char *var, int len)
-{
-    long val;
-    struct symtab **s;
-
-    s = lookup_variable (ip, var, len);
-    if (!s)
-	return 0;
-    do {
-	var = (*s)->s_value;
-	if (!isvarfirstletter(*var) || !strcmp((*s)->s_name, var))
-	    break;
-	s = lookup_variable (ip, var, strlen(var));
-    } while (s);
-
-    var = ParseIfExpression(ip, var, &val);
-    if (var && *var) debug(4, ("extraneous: '%s'\n", var));
-    return val;
-}
-
-int
-cppsetup(char *filename,
-	 char *line,
-	 struct filepointer *filep,
-	 struct inclist *inc)
-{
-    IfParser ip;
-    struct _parse_data pd;
-    long val = 0;
-
-    pd.filep = filep;
-    pd.inc = inc;
-    pd.line = line;
-    pd.filename = filename;
-    ip.funcs.handle_error = my_if_errors;
-    ip.funcs.eval_defined = my_eval_defined;
-    ip.funcs.eval_variable = my_eval_variable;
-    ip.data = (char *) &pd;
-
-    (void) ParseIfExpression (&ip, line, &val);
-    if (val)
-	return IF;
-    else
-	return IFFALSE;
-}
-#endif /* CPP */
-
deleted file mode 100644
--- a/config/mkdepend/def.h
+++ /dev/null
@@ -1,184 +0,0 @@
-/* $Xorg: def.h,v 1.4 2001/02/09 02:03:16 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/makedepend/def.h,v 3.14 2003/01/17 17:09:49 tsi Exp $ */
-
-#ifndef NO_X11
-#include <X11/Xos.h>
-#include <X11/Xfuncproto.h>
-#endif
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-#if 0
-#ifndef X_NOT_POSIX
-#ifndef _POSIX_SOURCE
-#define _POSIX_SOURCE
-#endif
-#endif
-#endif
-#include <sys/types.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-
-#define MAXDEFINES	512
-#define MAXFILES	1024
-#define MAXINCFILES	256	/* "-include" files */
-#define MAXDIRS		1024
-#define SYMTABINC	10	/* must be > 1 for define() to work right */
-#define	TRUE		1
-#define	FALSE		0
-
-/* the following must match the directives table in main.c */
-#define	IF		0
-#define	IFDEF		1
-#define	IFNDEF		2
-#define	ELSE		3
-#define	ENDIF		4
-#define	DEFINE		5
-#define	UNDEF		6
-#define	INCLUDE		7
-#define	LINE		8
-#define	PRAGMA		9
-#define ERROR           10
-#define IDENT           11
-#define SCCS            12
-#define ELIF            13
-#define EJECT           14
-#define WARNING         15
-#define INCLUDENEXT     16
-#define IFFALSE         17     /* pseudo value --- never matched */
-#define ELIFFALSE       18     /* pseudo value --- never matched */
-#define INCLUDEDOT      19     /* pseudo value --- never matched */
-#define IFGUESSFALSE    20     /* pseudo value --- never matched */
-#define ELIFGUESSFALSE  21     /* pseudo value --- never matched */
-#define INCLUDENEXTDOT  22     /* pseudo value --- never matched */
-
-#ifdef DEBUG
-extern int	_debugmask;
-/*
- * debug levels are:
- * 
- *     0	show ifn*(def)*,endif
- *     1	trace defined/!defined
- *     2	show #include
- *     3	show #include SYMBOL
- *     4-6	unused
- */
-#define debug(level,arg) { if (_debugmask & (1 << level)) warning arg; }
-#else
-#define	debug(level,arg) /**/
-#endif /* DEBUG */
-
-typedef	unsigned char boolean;
-
-struct symtab {
-	char	*s_name;
-	char	*s_value;
-};
-
-/* possible i_flag */
-#define DEFCHECKED	(1<<0)	/* whether defines have been checked */
-#define NOTIFIED	(1<<1)	/* whether we have revealed includes */
-#define MARKED		(1<<2)	/* whether it's in the makefile */
-#define SEARCHED	(1<<3)	/* whether we have read this */
-#define FINISHED	(1<<4)	/* whether we are done reading this */
-#define INCLUDED_SYM	(1<<5)	/* whether #include SYMBOL was found
-				   Can't use i_list if TRUE */
-struct	inclist {
-	char		*i_incstring;	/* string from #include line */
-	char		*i_file;	/* path name of the include file */
-	struct inclist	**i_list;	/* list of files it itself includes */
-	int		i_listlen;	/* length of i_list */
-	struct symtab	**i_defs;	/* symbol table for this file and its
-					   children when merged */
-	int		i_ndefs;	/* current # defines */
-	boolean		*i_merged;      /* whether we have merged child
-					   defines */
-	unsigned char   i_flags;
-};
-
-struct filepointer {
-	char	*f_name;
-	char	*f_p;
-	char	*f_base;
-	char	*f_end;
-	long	f_len;
-	long	f_line;
-	long	cmdinc_count;
-	char	**cmdinc_list;
-	long	cmdinc_line;
-};
-
-#include <stdlib.h>
-#if defined(macII) && !defined(__STDC__)  /* stdlib.h fails to define these */
-char *malloc(), *realloc();
-#endif /* macII */
-
-char			*copy(char *str);
-int                     match(char *str, char **list);
-char			*base_name(char *file);
-char			*getnextline(struct filepointer *fp);
-struct symtab		**slookup(char *symbol, struct inclist *file);
-struct symtab		**isdefined(char *symbol, struct inclist *file,
-				    struct inclist **srcfile);
-struct symtab		**fdefined(char *symbol, struct inclist *file,
-				   struct inclist **srcfile);
-struct filepointer	*getfile(char *file);
-void                    included_by(struct inclist *ip, 
-				    struct inclist *newfile);
-struct inclist		*newinclude(char *newfile, char *incstring);
-void                    inc_clean (void);
-struct inclist		*inc_path(char *file, char *include, int type);
-
-void                    freefile(struct filepointer *fp);
-
-void                    define2(char *name, char *val, struct inclist *file);
-void                    define(char *def, struct inclist *file);
-void                    undefine(char *symbol, struct inclist *file);
-int                     find_includes(struct filepointer *filep, 
-				      struct inclist *file, 
-				      struct inclist *file_red, 
-				      int recursion, boolean failOK);
-
-void                    recursive_pr_include(struct inclist *head, 
-					     char *file, char *base);
-void                    add_include(struct filepointer *filep, 
-				    struct inclist *file, 
-				    struct inclist *file_red, 
-				    char *include, int type,
-				    boolean failOK);
-
-int                     cppsetup(char *filename,
-				 char *line,
-				 struct filepointer *filep,
-				 struct inclist *inc);
-
-
-extern void fatalerr(char *, ...);
-extern void warning(char *, ...);
-extern void warning1(char *, ...);
deleted file mode 100644
--- a/config/mkdepend/ifparser.c
+++ /dev/null
@@ -1,551 +0,0 @@
-/*
- * $Xorg: ifparser.c,v 1.3 2000/08/17 19:41:50 cpqbld Exp $
- *
- * 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.
- * 
- * Author:  Jim Fulton
- *          Network Computing Devices, Inc.
- * 
- * Simple if statement processor
- *
- * This module can be used to evaluate string representations of C language
- * if constructs.  It accepts the following grammar:
- * 
- *     EXPRESSION	:=	VALUE
- * 			 |	VALUE  BINOP	EXPRESSION
- *			 |	VALUE	'?'	EXPRESSION ':'	EXPRESSION
- * 
- *     VALUE		:=	'('  EXPRESSION  ')'
- * 			 |	'!'  VALUE
- * 			 |	'-'  VALUE
- * 			 |	'+'  VALUE
- *			 |	'~'  VALUE
- * 			 |	'defined'  '('  variable  ')'
- * 			 |	'defined'  variable
- *			 |	# variable '(' variable-list ')'
- * 			 |	variable
- * 			 |	number
- * 
- *     BINOP		:=	'*'	|  '/'	|  '%'
- * 			 |	'+'	|  '-'
- * 			 |	'<<'	|  '>>'
- * 			 |	'<'	|  '>'	|  '<='  |  '>='
- * 			 |	'=='	|  '!='
- * 			 |	'&'	|  '^'  |  '|'
- * 			 |	'&&'	|  '||'
- * 
- * The normal C order of precedence is supported.
- * 
- * 
- * External Entry Points:
- * 
- *     ParseIfExpression		parse a string for #if
- */
-/* $XFree86: xc/config/makedepend/ifparser.c,v 3.11 2002/09/23 01:48:08 tsi Exp $ */
-
-#include "ifparser.h"
-#include <ctype.h>
-#include <stdlib.h>
-#include <string.h>
-
-/****************************************************************************
-		   Internal Macros and Utilities for Parser
- ****************************************************************************/
-
-#define DO(val) if (!(val)) return NULL
-#define CALLFUNC(ggg,fff) (*((ggg)->funcs.fff))
-#define SKIPSPACE(ccc) while (isspace(*ccc)) ccc++
-#define isvarfirstletter(ccc) (isalpha(ccc) || (ccc) == '_')
-
-
-static const char *
-parse_variable (IfParser *g, const char *cp, const char **varp)
-{
-    SKIPSPACE (cp);
-
-    if (!isvarfirstletter (*cp))
-	return CALLFUNC(g, handle_error) (g, cp, "variable name");
-
-    *varp = cp;
-    /* EMPTY */
-    for (cp++; isalnum(*cp) || *cp == '_'; cp++) ;
-    return cp;
-}
-
-
-static const char *
-parse_number (IfParser *g, const char *cp, long *valp)
-{
-    long base = 10;
-    SKIPSPACE (cp);
-
-    if (!isdigit(*cp))
-	return CALLFUNC(g, handle_error) (g, cp, "number");
-
-    *valp = 0;
-
-    if (*cp == '0') {
-	cp++;
-	if ((*cp == 'x') || (*cp == 'X')) {
-	    base = 16;
-	    cp++;
-	} else {
-	    base = 8;
-	}
-    }
-
-    /* Ignore overflows and assume ASCII, what source is usually written in */
-    while (1) {
-	int increment = -1;
-	if (base == 8) {
-	    if ((*cp >= '0') && (*cp <= '7'))
-		increment = *cp++ - '0';
-	} else if (base == 16) {
-	    if ((*cp >= '0') && (*cp <= '9'))
-		increment = *cp++ - '0';
-	    else if ((*cp >= 'A') &&  (*cp <= 'F'))
-		increment = *cp++ - ('A' - 10);
-	    else if ((*cp >= 'a') && (*cp <= 'f'))
-		increment = *cp++ - ('a' - 10);
-	} else {	/* Decimal */
-	    if ((*cp >= '0') && (*cp <= '9'))
-		increment = *cp++ - '0';
-	}
-	if (increment < 0)
-	    break;
-	*valp = (*valp * base) + increment;
-    }
-
-    /* Skip trailing qualifiers */
-    while (*cp == 'U' || *cp == 'u' || *cp == 'L' || *cp == 'l') cp++;
-    return cp;
-}
-
-static const char *
-parse_character (IfParser *g, const char *cp, long *valp)
-{
-    char val;
-
-    SKIPSPACE (cp);
-    if (*cp == '\\')
-	switch (cp[1]) {
-	case 'n': val = '\n'; break;
-	case 't': val = '\t'; break;
-	case 'v': val = '\v'; break;
-	case 'b': val = '\b'; break;
-	case 'r': val = '\r'; break;
-	case 'f': val = '\f'; break;
-	case 'a': val = '\a'; break;
-	case '\\': val = '\\'; break;
-	case '?': val = '\?'; break;
-	case '\'': val = '\''; break;
-	case '\"': val = '\"'; break;
-	case 'x': val = (char) strtol (cp + 2, NULL, 16); break;
-	default: val = (char) strtol (cp + 1, NULL, 8); break;
-	}
-    else
-	val = *cp;
-    while (*cp != '\'') cp++;
-    *valp = (long) val;
-    return cp;
-}
-
-static const char *
-parse_value (IfParser *g, const char *cp, long *valp)
-{
-    const char *var, *varend;
-
-    *valp = 0;
-
-    SKIPSPACE (cp);
-    if (!*cp)
-	return cp;
-
-    switch (*cp) {
-      case '(':
-	DO (cp = ParseIfExpression (g, cp + 1, valp));
-	SKIPSPACE (cp);
-	if (*cp != ')') 
-	    return CALLFUNC(g, handle_error) (g, cp, ")");
-
-	return cp + 1;			/* skip the right paren */
-
-      case '!':
-	DO (cp = parse_value (g, cp + 1, valp));
-	*valp = !(*valp);
-	return cp;
-
-      case '-':
-	DO (cp = parse_value (g, cp + 1, valp));
-	*valp = -(*valp);
-	return cp;
-
-      case '+':
-	DO (cp = parse_value (g, cp + 1, valp));
-	return cp;
-
-      case '~':
-	DO (cp = parse_value (g, cp + 1, valp));
-	*valp = ~(*valp);
-	return cp;
-
-      case '#':
-	DO (cp = parse_variable (g, cp + 1, &var));
-	SKIPSPACE (cp);
-	if (*cp != '(')
-	    return CALLFUNC(g, handle_error) (g, cp, "(");
-	do {
-	    DO (cp = parse_variable (g, cp + 1, &var));
-	    SKIPSPACE (cp);
-	} while (*cp && *cp != ')');
-	if (*cp != ')')
-	    return CALLFUNC(g, handle_error) (g, cp, ")");
-	*valp = 1; /* XXX */
-	return cp + 1;
-
-      case '\'':
-	DO (cp = parse_character (g, cp + 1, valp));
-	if (*cp != '\'')
-	    return CALLFUNC(g, handle_error) (g, cp, "'");
-	return cp + 1;
-
-      case 'd':
-	if (strncmp (cp, "defined", 7) == 0 && !isalnum(cp[7])) {
-	    int paren = 0;
-	    int len;
-
-	    cp += 7;
-	    SKIPSPACE (cp);
-	    if (*cp == '(') {
-		paren = 1;
-		cp++;
-	    }
-	    DO (cp = parse_variable (g, cp, &var));
-	    len = cp - var;
-	    SKIPSPACE (cp);
-	    if (paren && *cp != ')')
-		return CALLFUNC(g, handle_error) (g, cp, ")");
-	    *valp = (*(g->funcs.eval_defined)) (g, var, len);
-	    return cp + paren;		/* skip the right paren */
-	}
-	/* fall out */
-    }
-
-    if (isdigit(*cp)) {
-	DO (cp = parse_number (g, cp, valp));
-    } else if (!isvarfirstletter(*cp))
-	return CALLFUNC(g, handle_error) (g, cp, "variable or number");
-    else {
-	DO (cp = parse_variable (g, cp, &var));
-	varend = cp;
-	SKIPSPACE(cp);
-	if (*cp != '(') {
-	    *valp = (*(g->funcs.eval_variable)) (g, var, varend - var);
-	} else {
-	    do {
-		long dummy;
-		DO (cp = ParseIfExpression (g, cp + 1, &dummy));
-		SKIPSPACE(cp);
-		if (*cp == ')')
-		    break;
-		if (*cp != ',')
-		    return CALLFUNC(g, handle_error) (g, cp, ",");
-	    } while (1);
-
-	    *valp = 1;	/* XXX */
-	    cp++;
-	}
-    }
-    
-    return cp;
-}
-
-
-
-static const char *
-parse_product (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_value (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '*':
-	DO (cp = parse_product (g, cp + 1, &rightval));
-	*valp = (*valp * rightval);
-	break;
-
-      case '/':
-	DO (cp = parse_product (g, cp + 1, &rightval));
-	if (rightval == 0)
-	  return CALLFUNC(g, handle_error) (g, cp, "0");
-	*valp = (*valp / rightval);
-	break;
-
-      case '%':
-	DO (cp = parse_product (g, cp + 1, &rightval));
-	*valp = (*valp % rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_sum (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_product (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '+':
-	DO (cp = parse_sum (g, cp + 1, &rightval));
-	*valp = (*valp + rightval);
-	break;
-
-      case '-':
-	DO (cp = parse_sum (g, cp + 1, &rightval));
-	*valp = (*valp - rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_shift (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_sum (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '<':
-	if (cp[1] == '<') {
-	    DO (cp = parse_shift (g, cp + 2, &rightval));
-	    *valp = (*valp << rightval);
-	}
-	break;
-
-      case '>':
-	if (cp[1] == '>') {
-	    DO (cp = parse_shift (g, cp + 2, &rightval));
-	    *valp = (*valp >> rightval);
-	}
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_inequality (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_shift (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '<':
-	if (cp[1] == '=') {
-	    DO (cp = parse_inequality (g, cp + 2, &rightval));
-	    *valp = (*valp <= rightval);
-	} else {
-	    DO (cp = parse_inequality (g, cp + 1, &rightval));
-	    *valp = (*valp < rightval);
-	}
-	break;
-
-      case '>':
-	if (cp[1] == '=') {
-	    DO (cp = parse_inequality (g, cp + 2, &rightval));
-	    *valp = (*valp >= rightval);
-	} else {
-	    DO (cp = parse_inequality (g, cp + 1, &rightval));
-	    *valp = (*valp > rightval);
-	}
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_equality (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_inequality (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '=':
-	if (cp[1] == '=')
-	    cp++;
-	DO (cp = parse_equality (g, cp + 1, &rightval));
-	*valp = (*valp == rightval);
-	break;
-
-      case '!':
-	if (cp[1] != '=')
-	    break;
-	DO (cp = parse_equality (g, cp + 2, &rightval));
-	*valp = (*valp != rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_band (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_equality (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '&':
-	if (cp[1] != '&') {
-	    DO (cp = parse_band (g, cp + 1, &rightval));
-	    *valp = (*valp & rightval);
-	}
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_bxor (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_band (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '^':
-	DO (cp = parse_bxor (g, cp + 1, &rightval));
-	*valp = (*valp ^ rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_bor (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_bxor (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '|':
-	if (cp[1] != '|') {
-	    DO (cp = parse_bor (g, cp + 1, &rightval));
-	    *valp = (*valp | rightval);
-	}
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_land (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_bor (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '&':
-	if (cp[1] != '&')
-	    return CALLFUNC(g, handle_error) (g, cp, "&&");
-	DO (cp = parse_land (g, cp + 2, &rightval));
-	*valp = (*valp && rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_lor (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_land (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '|':
-	if (cp[1] != '|')
-	    return CALLFUNC(g, handle_error) (g, cp, "||");
-	DO (cp = parse_lor (g, cp + 2, &rightval));
-	*valp = (*valp || rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_cond(IfParser *g, const char *cp, long *valp)
-{
-    long trueval, falseval;
-
-    DO (cp = parse_lor (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '?':
-	DO (cp = parse_cond (g, cp + 1, &trueval));
-	SKIPSPACE (cp);
-	if (*cp != ':')
-	    return CALLFUNC(g, handle_error) (g, cp, ":");
-	DO (cp = parse_cond (g, cp + 1, &falseval));
-	*valp = (*valp ? trueval : falseval);
-	break;
-    }
-    return cp;
-}
-
-
-/****************************************************************************
-			     External Entry Points
- ****************************************************************************/
-
-const char *
-ParseIfExpression (IfParser *g, const char *cp, long *valp)
-{
-    return parse_cond (g, cp, valp);
-}
deleted file mode 100644
--- a/config/mkdepend/ifparser.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * $Xorg: ifparser.h,v 1.3 2000/08/17 19:41:51 cpqbld Exp $
- *
- * 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.
- * 
- * Author:  Jim Fulton
- *          Network Computing Devices, Inc.
- * 
- * Simple if statement processor
- *
- * This module can be used to evaluate string representations of C language
- * if constructs.  It accepts the following grammar:
- * 
- *     EXPRESSION	:=	VALUE
- * 			 |	VALUE  BINOP	EXPRESSION
- *			 |	VALUE	'?'	EXPRESSION ':'	EXPRESSION
- * 
- *     VALUE		:=	'('  EXPRESSION  ')'
- * 			 |	'!'  VALUE
- * 			 |	'-'  VALUE
- *			 |	'~'  VALUE
- * 			 |	'defined'  '('  variable  ')'
- * 			 |	variable
- * 			 |	number
- * 
- *     BINOP		:=	'*'	|  '/'	|  '%'
- * 			 |	'+'	|  '-'
- * 			 |	'<<'	|  '>>'
- * 			 |	'<'	|  '>'	|  '<='  |  '>='
- * 			 |	'=='	|  '!='
- * 			 |	'&'	|  '^'  |  '|'
- * 			 |	'&&'	|  '||'
- * 
- * The normal C order of precedence is supported.
- * 
- * 
- * External Entry Points:
- * 
- *     ParseIfExpression		parse a string for #if
- */
-
-/* $XFree86: xc/config/makedepend/ifparser.h,v 3.5 2001/07/25 15:04:40 dawes Exp $ */
-
-#include <stdio.h>
-
-typedef int Bool;
-#define False 0
-#define True 1
-
-typedef struct _if_parser {
-    struct {				/* functions */
-	const char *(*handle_error) (struct _if_parser *, const char *,
-				     const char *);
-	long (*eval_variable) (struct _if_parser *, const char *, int);
-	int (*eval_defined) (struct _if_parser *, const char *, int);
-    } funcs;
-    char *data;
-} IfParser;
-
-const char *ParseIfExpression (
-    IfParser *, 
-    const char *, 
-    long *
-);
-
deleted file mode 100644
--- a/config/mkdepend/imakemdep.h
+++ /dev/null
@@ -1,733 +0,0 @@
-
-/* $XConsortium: imakemdep.h,v 1.83 95/04/07 19:47:46 kaleb Exp $ */
-/* $XFree86: xc/config/imake/imakemdep.h,v 3.12 1995/07/08 10:22:17 dawes Exp $ */
-/*
-
-Copyright (c) 1993, 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
-CONNECTION 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 dealings
-in this Software without prior written authorization from the X Consortium.
-
-*/
-
-
-/* 
- * This file contains machine-dependent constants for the imake utility.
- * When porting imake, read each of the steps below and add in any necessary
- * definitions.  In general you should *not* edit ccimake.c or imake.c!
- */
-
-#ifdef CCIMAKE
-/*
- * Step 1:  imake_ccflags
- *     Define any special flags that will be needed to get imake.c to compile.
- *     These will be passed to the compile along with the contents of the
- *     make variable BOOTSTRAPCFLAGS.
- */
-#ifdef hpux
-#ifdef hp9000s800
-#define imake_ccflags "-DSYSV"
-#else
-#define imake_ccflags "-Wc,-Nd4000,-Ns3000 -DSYSV"
-#endif
-#endif
-
-#if defined(macII) || defined(_AUX_SOURCE)
-#define imake_ccflags "-DmacII -DSYSV"
-#endif
-
-#ifdef stellar
-#define imake_ccflags "-DSYSV"
-#endif
-
-#if defined(USL) || defined(Oki) || defined(NCR)
-#define imake_ccflags "-Xc -DSVR4"
-#endif
-
-#ifdef sony
-#if defined(SYSTYPE_SYSV) || defined(_SYSTYPE_SYSV)
-#define imake_ccflags "-DSVR4"
-#else
-#include <sys/param.h>
-#if NEWSOS < 41
-#define imake_ccflags "-Dbsd43 -DNOSTDHDRS"
-#else
-#if NEWSOS < 42
-#define imake_ccflags "-Dbsd43"
-#endif
-#endif
-#endif
-#endif
-
-#ifdef _CRAY
-#define imake_ccflags "-DSYSV -DUSG"
-#endif
-
-#if defined(_IBMR2) || defined(aix)
-#define imake_ccflags "-Daix -DSYSV"
-#endif
-
-#ifdef Mips
-#  if defined(SYSTYPE_BSD) || defined(BSD) || defined(BSD43)
-#    define imake_ccflags "-DBSD43"
-#  else 
-#    define imake_ccflags "-DSYSV"
-#  endif
-#endif 
-
-#ifdef is68k
-#define imake_ccflags "-Dluna -Duniosb"
-#endif
-
-#ifdef SYSV386
-# ifdef SVR4
-#  define imake_ccflags "-Xc -DSVR4"
-# else
-#  define imake_ccflags "-DSYSV"
-# endif
-#endif
-
-#ifdef SVR4
-# ifdef i386
-#  define imake_ccflags "-Xc -DSVR4"
-# endif
-#endif
-
-#ifdef SYSV
-# ifdef i386
-#  define imake_ccflags "-DSYSV"
-# endif
-#endif
-
-#ifdef __convex__
-#define imake_ccflags "-fn -tm c1"
-#endif
-
-#ifdef apollo
-#define imake_ccflags "-DX_NOT_POSIX"
-#endif
-
-#ifdef WIN32
-#define imake_ccflags "-nologo -batch -D__STDC__"
-#endif
-
-#ifdef __uxp__
-#define imake_ccflags "-DSVR4 -DANSICPP"
-#endif
-
-#ifdef __sxg__
-#define imake_ccflags "-DSYSV -DUSG -DNOSTDHDRS"
-#endif
-
-#ifdef sequent
-#define imake_ccflags "-DX_NOT_STDC_ENV -DX_NOT_POSIX"
-#endif
-
-#ifdef _SEQUENT_
-#define imake_ccflags "-DSYSV -DUSG"
-#endif
-
-#if defined(SX) || defined(PC_UX)
-#define imake_ccflags "-DSYSV"
-#endif
-
-#ifdef nec_ews_svr2
-#define imake_ccflags "-DUSG"
-#endif
-
-#if defined(nec_ews_svr4) || defined(_nec_ews_svr4) || defined(_nec_up) || defined(_nec_ft)
-#define imake_ccflags "-DSVR4"
-#endif
-
-#ifdef	MACH
-#define imake_ccflags "-DNOSTDHDRS"
-#endif
-
-/* this is for OS/2 under EMX. This won't work with DOS */
-#if defined(__EMX__) 
-#define imake_ccflags "-DBSD43"
-#endif
-
-#else /* not CCIMAKE */
-#ifndef MAKEDEPEND
-/*
- * Step 2:  dup2
- *     If your OS doesn't have a dup2() system call to duplicate one file
- *     descriptor onto another, define such a mechanism here (if you don't
- *     already fall under the existing category(ies).
- */
-#if defined(SYSV) && !defined(_CRAY) && !defined(Mips) && !defined(_SEQUENT_)
-#define	dup2(fd1,fd2)	((fd1 == fd2) ? fd1 : (close(fd2), \
-					       fcntl(fd1, F_DUPFD, fd2)))
-#endif
-
-
-/*
- * Step 3:  FIXUP_CPP_WHITESPACE
- *     If your cpp collapses tabs macro expansions into a single space and
- *     replaces escaped newlines with a space, define this symbol.  This will
- *     cause imake to attempt to patch up the generated Makefile by looking
- *     for lines that have colons in them (this is why the rules file escapes
- *     all colons).  One way to tell if you need this is to see whether or not
- *     your Makefiles have no tabs in them and lots of @@ strings.
- */
-#if defined(sun) || defined(SYSV) || defined(SVR4) || defined(hcx) || defined(WIN32) || (defined(AMOEBA) && defined(CROSS_COMPILE))
-#define FIXUP_CPP_WHITESPACE
-#endif
-#ifdef WIN32
-#define REMOVE_CPP_LEADSPACE
-#define INLINE_SYNTAX
-#define MAGIC_MAKE_VARS
-#endif
-#ifdef __minix_vmd
-#define FIXUP_CPP_WHITESPACE
-#endif
-
-/*
- * Step 4:  USE_CC_E, DEFAULT_CC, DEFAULT_CPP
- *     If you want to use cc -E instead of cpp, define USE_CC_E.
- *     If use cc -E but want a different compiler, define DEFAULT_CC.
- *     If the cpp you need is not in /lib/cpp, define DEFAULT_CPP.
- */
-#ifdef hpux
-#define USE_CC_E
-#endif
-#ifdef WIN32
-#define USE_CC_E
-#define DEFAULT_CC "cl"
-#endif
-#ifdef apollo
-#define DEFAULT_CPP "/usr/lib/cpp"
-#endif
-#if defined(_IBMR2) && !defined(DEFAULT_CPP)
-#define DEFAULT_CPP "/usr/lpp/X11/Xamples/util/cpp/cpp"
-#endif
-#if defined(sun) && defined(SVR4)
-#define DEFAULT_CPP "/usr/ccs/lib/cpp"
-#endif
-#ifdef __bsdi__
-#define DEFAULT_CPP "/usr/bin/cpp"
-#endif
-#ifdef __uxp__
-#define DEFAULT_CPP "/usr/ccs/lib/cpp"
-#endif
-#ifdef __sxg__
-#define DEFAULT_CPP "/usr/lib/cpp"
-#endif
-#ifdef _CRAY
-#define DEFAULT_CPP "/lib/pcpp"
-#endif
-#if defined(__386BSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__)
-#define DEFAULT_CPP "/usr/libexec/cpp"
-#endif
-#ifdef	MACH
-#define USE_CC_E
-#endif
-#ifdef __minix_vmd
-#define DEFAULT_CPP "/usr/lib/cpp"
-#endif
-#if defined(__EMX__)
-/* expects cpp in PATH */
-#define DEFAULT_CPP "cpp"
-#endif
-
-/*
- * Step 5:  cpp_argv
- *     The following table contains the flags that should be passed
- *     whenever a Makefile is being generated.  If your preprocessor 
- *     doesn't predefine any unique symbols, choose one and add it to the
- *     end of this table.  Then, do the following:
- * 
- *         a.  Use this symbol in Imake.tmpl when setting MacroFile.
- *         b.  Put this symbol in the definition of BootstrapCFlags in your
- *             <platform>.cf file.
- *         c.  When doing a make World, always add "BOOTSTRAPCFLAGS=-Dsymbol" 
- *             to the end of the command line.
- * 
- *     Note that you may define more than one symbol (useful for platforms 
- *     that support multiple operating systems).
- */
-
-#define	ARGUMENTS 50	/* number of arguments in various arrays */
-char *cpp_argv[ARGUMENTS] = {
-	"cc",		/* replaced by the actual program to exec */
-	"-I.",		/* add current directory to include path */
-#ifdef unix
-	"-Uunix",	/* remove unix symbol so that filename unix.c okay */
-#endif
-#if defined(__386BSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(MACH)
-# ifdef __i386__
-	"-D__i386__",
-# endif
-# ifdef __x86_64__
-	"-D__x86_64__",
-# endif
-# ifdef __GNUC__
-	"-traditional",
-# endif
-#endif
-#ifdef M4330
-	"-DM4330",	/* Tektronix */
-#endif
-#ifdef M4310
-	"-DM4310",	/* Tektronix */
-#endif
-#if defined(macII) || defined(_AUX_SOURCE)
-	"-DmacII",	/* Apple A/UX */
-#endif
-#ifdef USL
-	"-DUSL",	/* USL */
-#endif
-#ifdef sony
-	"-Dsony",	/* Sony */
-#if !defined(SYSTYPE_SYSV) && !defined(_SYSTYPE_SYSV) && NEWSOS < 42
-	"-Dbsd43",
-#endif
-#endif
-#ifdef _IBMR2
-	"-D_IBMR2",	/* IBM RS-6000 (we ensured that aix is defined above */
-#ifndef aix
-#define aix		/* allow BOOTSTRAPCFLAGS="-D_IBMR2" */
-#endif
-#endif /* _IBMR2 */
-#ifdef aix
-	"-Daix",	/* AIX instead of AOS */
-#ifndef ibm
-#define ibm		/* allow BOOTSTRAPCFLAGS="-Daix" */
-#endif
-#endif /* aix */
-#ifdef ibm
-	"-Dibm",	/* IBM PS/2 and RT under both AOS and AIX */
-#endif
-#ifdef luna
-	"-Dluna",	/* OMRON luna 68K and 88K */
-#ifdef luna1
-	"-Dluna1",
-#endif
-#ifdef luna88k		/* need not on UniOS-Mach Vers. 1.13 */
-	"-traditional", /* for some older version            */
-#endif			/* instead of "-DXCOMM=\\#"          */
-#ifdef uniosb
-	"-Duniosb",
-#endif
-#ifdef uniosu
-	"-Duniosu",
-#endif
-#endif /* luna */
-#ifdef _CRAY		/* Cray */
-	"-Ucray",
-#endif
-#ifdef Mips
-	"-DMips",	/* Define and use Mips for Mips Co. OS/mach. */
-# if defined(SYSTYPE_BSD) || defined(BSD) || defined(BSD43)
-	"-DBSD43",	/* Mips RISCOS supports two environments */
-# else
-	"-DSYSV",	/* System V environment is the default */
-# endif
-#endif /* Mips */
-#ifdef MOTOROLA
-	"-DMOTOROLA",    /* Motorola Delta Systems */
-# ifdef SYSV
-	"-DSYSV", 
-# endif
-# ifdef SVR4
-	"-DSVR4",
-# endif
-#endif /* MOTOROLA */
-#ifdef i386
-	"-Di386",
-# ifdef SVR4
-	"-DSVR4",
-# endif
-# ifdef SYSV
-	"-DSYSV",
-#  ifdef ISC
-	"-DISC",
-#   ifdef ISC40
-	"-DISC40",       /* ISC 4.0 */
-#   else
-#    ifdef ISC202
-	"-DISC202",      /* ISC 2.0.2 */
-#    else
-#     ifdef ISC30
-	"-DISC30",       /* ISC 3.0 */
-#     else
-	"-DISC22",       /* ISC 2.2.1 */
-#     endif
-#    endif
-#   endif
-#  endif
-#  ifdef SCO
-	"-DSCO",
-#   ifdef SCO324
-	"-DSCO324",
-#   endif
-#  endif
-# endif
-# ifdef ESIX
-	"-DESIX",
-# endif
-# ifdef ATT
-	"-DATT",
-# endif
-# ifdef DELL
-	"-DDELL",
-# endif
-#endif
-#ifdef SYSV386           /* System V/386 folks, obsolete */
-	"-Di386",
-# ifdef SVR4
-	"-DSVR4",
-# endif
-# ifdef ISC
-	"-DISC",
-#  ifdef ISC40
-	"-DISC40",       /* ISC 4.0 */
-#  else
-#   ifdef ISC202
-	"-DISC202",      /* ISC 2.0.2 */
-#   else
-#    ifdef ISC30
-	"-DISC30",       /* ISC 3.0 */
-#    else
-	"-DISC22",       /* ISC 2.2.1 */
-#    endif
-#   endif
-#  endif
-# endif
-# ifdef SCO
-	"-DSCO",
-#  ifdef SCO324
-	"-DSCO324",
-#  endif
-# endif
-# ifdef ESIX
-	"-DESIX",
-# endif
-# ifdef ATT
-	"-DATT",
-# endif
-# ifdef DELL
-	"-DDELL",
-# endif
-#endif
-#ifdef __osf__
-	"-D__osf__",
-# ifdef __mips__
-	"-D__mips__",
-# endif
-# ifdef __alpha
-	"-D__alpha",
-# endif
-# ifdef __i386__
-	"-D__i386__",
-# endif
-# ifdef __GNUC__
-	"-traditional",
-# endif
-#endif
-#ifdef Oki
-	"-DOki",
-#endif
-#ifdef sun
-#ifdef SVR4
-	"-DSVR4",
-#endif
-#endif
-#ifdef WIN32
-	"-DWIN32",
-	"-nologo",
-	"-batch",
-	"-D__STDC__",
-#endif
-#ifdef NCR
-	"-DNCR",	/* NCR */
-#endif
-#ifdef linux
-        "-traditional",
-        "-Dlinux",
-#endif
-#ifdef __uxp__
-	"-D__uxp__",
-#endif
-#ifdef __sxg__
-	"-D__sxg__",
-#endif
-#ifdef nec_ews_svr2
-	"-Dnec_ews_svr2",
-#endif
-#ifdef AMOEBA
-	"-DAMOEBA",
-# ifdef CROSS_COMPILE
-	"-DCROSS_COMPILE",
-#  ifdef CROSS_i80386
-	"-Di80386",
-#  endif
-#  ifdef CROSS_sparc
-	"-Dsparc",
-#  endif
-#  ifdef CROSS_mc68000
-	"-Dmc68000",
-#  endif
-# else
-#  ifdef i80386
-	"-Di80386",
-#  endif
-#  ifdef sparc
-	"-Dsparc",
-#  endif
-#  ifdef mc68000
-	"-Dmc68000",
-#  endif
-# endif
-#endif
-#ifdef __minix_vmd
-        "-Dminix",
-#endif
-
-#if defined(__EMX__)
-	"-traditional",
-	"-Demxos2",
-#endif
-
-};
-#else /* else MAKEDEPEND */
-/*
- * Step 6:  predefs
- *     If your compiler and/or preprocessor define any specific symbols, add
- *     them to the the following table.  The definition of struct symtab is
- *     in util/makedepend/def.h.
- */
-struct symtab	predefs[] = {
-#ifdef apollo
-	{"apollo", "1"},
-#endif
-#ifdef ibm032
-	{"ibm032", "1"},
-#endif
-#ifdef ibm
-	{"ibm", "1"},
-#endif
-#ifdef aix
-	{"aix", "1"},
-#endif
-#ifdef sun
-	{"sun", "1"},
-#endif
-#ifdef sun2
-	{"sun2", "1"},
-#endif
-#ifdef sun3
-	{"sun3", "1"},
-#endif
-#ifdef sun4
-	{"sun4", "1"},
-#endif
-#ifdef sparc
-	{"sparc", "1"},
-#endif
-#ifdef __sparc__
-	{"__sparc__", "1"},
-#endif
-#ifdef hpux
-	{"hpux", "1"},
-#endif
-#ifdef __hpux
-	{"__hpux", "1"},
-#endif
-#ifdef __hp9000s800
-	{"__hp9000s800", "1"},
-#endif
-#ifdef __hp9000s700
-	{"__hp9000s700", "1"},
-#endif
-#ifdef vax
-	{"vax", "1"},
-#endif
-#ifdef VMS
-	{"VMS", "1"},
-#endif
-#ifdef cray
-	{"cray", "1"},
-#endif
-#ifdef CRAY
-	{"CRAY", "1"},
-#endif
-#ifdef _CRAY
-	{"_CRAY", "1"},
-#endif
-#ifdef att
-	{"att", "1"},
-#endif
-#ifdef mips
-	{"mips", "1"},
-#endif
-#ifdef __mips__
-	{"__mips__", "1"},
-#endif
-#ifdef ultrix
-	{"ultrix", "1"},
-#endif
-#ifdef stellar
-	{"stellar", "1"},
-#endif
-#ifdef mc68000
-	{"mc68000", "1"},
-#endif
-#ifdef mc68020
-	{"mc68020", "1"},
-#endif
-#ifdef __GNUC__
-	{"__GNUC__", "1"},
-#endif
-#if __STDC__
-	{"__STDC__", "1"},
-#endif
-#ifdef __HIGHC__
-	{"__HIGHC__", "1"},
-#endif
-#ifdef CMU
-	{"CMU", "1"},
-#endif
-#ifdef luna
-	{"luna", "1"},
-#ifdef luna1
-	{"luna1", "1"},
-#endif
-#ifdef luna2
-	{"luna2", "1"},
-#endif
-#ifdef luna88k
-	{"luna88k", "1"},
-#endif
-#ifdef uniosb
-	{"uniosb", "1"},
-#endif
-#ifdef uniosu
-	{"uniosu", "1"},
-#endif
-#endif
-#ifdef ieeep754
-	{"ieeep754", "1"},
-#endif
-#ifdef is68k
-	{"is68k", "1"},
-#endif
-#ifdef m68k
-        {"m68k", "1"},
-#endif
-#ifdef m88k
-        {"m88k", "1"},
-#endif
-#ifdef __m88k__
-	{"__m88k__", "1"},
-#endif
-#ifdef bsd43
-	{"bsd43", "1"},
-#endif
-#ifdef hcx
-	{"hcx", "1"},
-#endif
-#ifdef sony
-	{"sony", "1"},
-#ifdef SYSTYPE_SYSV
-	{"SYSTYPE_SYSV", "1"},
-#endif
-#ifdef _SYSTYPE_SYSV
-	{"_SYSTYPE_SYSV", "1"},
-#endif
-#endif
-#ifdef __OSF__
-	{"__OSF__", "1"},
-#endif
-#ifdef __osf__
-	{"__osf__", "1"},
-#endif
-#ifdef __alpha
-	{"__alpha", "1"},
-#endif
-#ifdef __DECC
-	{"__DECC",  "1"},
-#endif
-#ifdef __decc
-	{"__decc",  "1"},
-#endif
-#ifdef __uxp__
-	{"__uxp__", "1"},
-#endif
-#ifdef __sxg__
-	{"__sxg__", "1"},
-#endif
-#ifdef _SEQUENT_
-	{"_SEQUENT_", "1"},
-	{"__STDC__", "1"},
-#endif
-#ifdef __bsdi__
-	{"__bsdi__", "1"},
-#endif
-#ifdef nec_ews_svr2
-	{"nec_ews_svr2", "1"},
-#endif
-#ifdef nec_ews_svr4
-	{"nec_ews_svr4", "1"},
-#endif
-#ifdef _nec_ews_svr4
-	{"_nec_ews_svr4", "1"},
-#endif
-#ifdef _nec_up
-	{"_nec_up", "1"},
-#endif
-#ifdef SX
-	{"SX", "1"},
-#endif
-#ifdef nec
-	{"nec", "1"},
-#endif
-#ifdef _nec_ft
-	{"_nec_ft", "1"},
-#endif
-#ifdef PC_UX
-	{"PC_UX", "1"},
-#endif
-#ifdef sgi
-	{"sgi", "1"},
-#endif
-#ifdef __sgi
-	{"__sgi", "1"},
-#endif
-#ifdef __FreeBSD__
-	{"__FreeBSD__", "1"},
-#endif
-#ifdef __NetBSD__
-	{"__NetBSD__", "1"},
-#endif
-#ifdef __OpenBSD__
-	{"__OpenBSD__", "1"},
-#endif
-#ifdef __EMX__
-	{"__EMX__", "1"},
-#endif
-	/* add any additional symbols before this line */
-	{NULL, NULL}
-};
-
-#endif /* MAKEDEPEND */
-#endif /* CCIMAKE */
deleted file mode 100644
--- a/config/mkdepend/include.c
+++ /dev/null
@@ -1,337 +0,0 @@
-/* $Xorg: include.c,v 1.4 2001/02/09 02:03:16 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/makedepend/include.c,v 3.7 2001/12/14 19:53:20 dawes Exp $ */
-
-
-#include "def.h"
-
-#ifdef _MSC_VER
-#include <windows.h>
-static int
-does_file_exist(char *file)
-{
-  WIN32_FILE_ATTRIBUTE_DATA data;
-  BOOL b = GetFileAttributesExA(file, GetFileExInfoStandard, &data);
-  if (!b)
-    return 0;
-  return (data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) == 0;
-}
-#else
-static int
-does_file_exist(char *file)
-{
-  struct stat sb;
-  return stat(file, &sb) == 0 && !S_ISDIR(sb.st_mode);
-}
-#endif
-
-extern struct	inclist	inclist[ MAXFILES ],
-			*inclistp, *inclistnext;
-extern char	*includedirs[ ],
-		**includedirsnext;
-extern char	*notdotdot[ ];
-extern boolean show_where_not;
-extern boolean warn_multiple;
-
-static boolean
-isdot(char *p)
-{
-	if(p && *p++ == '.' && *p++ == '\0')
-		return(TRUE);
-	return(FALSE);
-}
-
-static boolean
-isdotdot(char *p)
-{
-	if(p && *p++ == '.' && *p++ == '.' && *p++ == '\0')
-		return(TRUE);
-	return(FALSE);
-}
-
-static boolean
-issymbolic(char *dir, char *component)
-{
-#ifdef S_IFLNK
-	struct stat	st;
-	char	buf[ BUFSIZ ], **pp;
-
-	sprintf(buf, "%s%s%s", dir, *dir ? "/" : "", component);
-	for (pp=notdotdot; *pp; pp++)
-		if (strcmp(*pp, buf) == 0)
-			return (TRUE);
-	if (lstat(buf, &st) == 0
-	&& (st.st_mode & S_IFMT) == S_IFLNK) {
-		*pp++ = copy(buf);
-		if (pp >= &notdotdot[ MAXDIRS ])
-			fatalerr("out of .. dirs, increase MAXDIRS\n");
-		return(TRUE);
-	}
-#endif
-	return(FALSE);
-}
-
-/*
- * Occasionally, pathnames are created that look like .../x/../y
- * Any of the 'x/..' sequences within the name can be eliminated.
- * (but only if 'x' is not a symbolic link!!)
- */
-static void
-remove_dotdot(char *path)
-{
-	register char	*end, *from, *to, **cp;
-	char		*components[ MAXFILES ],
-			newpath[ BUFSIZ ];
-	boolean		component_copied;
-
-	/*
-	 * slice path up into components.
-	 */
-	to = newpath;
-	if (*path == '/')
-		*to++ = '/';
-	*to = '\0';
-	cp = components;
-	for (from=end=path; *end; end++)
-		if (*end == '/') {
-			while (*end == '/')
-				*end++ = '\0';
-			if (*from)
-				*cp++ = from;
-			from = end;
-		}
-	*cp++ = from;
-	*cp = NULL;
-
-	/*
-	 * Recursively remove all 'x/..' component pairs.
-	 */
-	cp = components;
-	while(*cp) {
-		if (!isdot(*cp) && !isdotdot(*cp) && isdotdot(*(cp+1))
-		    && !issymbolic(newpath, *cp))
-		{
-		    char **fp = cp + 2;
-		    char **tp = cp;
-
-		    do 
-			*tp++ = *fp; /* move all the pointers down */
-		    while (*fp++);
-		    if (cp != components)
-			cp--;	/* go back and check for nested ".." */
-		} else {
-		    cp++;
-		}
-	}
-	/*
-	 * Concatenate the remaining path elements.
-	 */
-	cp = components;
-	component_copied = FALSE;
-	while(*cp) {
-		if (component_copied)
-			*to++ = '/';
-		component_copied = TRUE;
-		for (from = *cp; *from; )
-			*to++ = *from++;
-		*to = '\0';
-		cp++;
-	}
-	*to++ = '\0';
-
-	/*
-	 * copy the reconstituted path back to our pointer.
-	 */
-	strcpy(path, newpath);
-}
-
-/*
- * Add an include file to the list of those included by 'file'.
- */
-struct inclist *
-newinclude(char *newfile, char *incstring)
-{
-	register struct inclist	*ip;
-
-	/*
-	 * First, put this file on the global list of include files.
-	 */
-	ip = inclistp++;
-	if (inclistp == inclist + MAXFILES - 1)
-		fatalerr("out of space: increase MAXFILES\n");
-	ip->i_file = copy(newfile);
-
-	if (incstring == NULL)
-		ip->i_incstring = ip->i_file;
-	else
-		ip->i_incstring = copy(incstring);
-
-	inclistnext = inclistp;
-	return(ip);
-}
-
-void
-included_by(struct inclist *ip, struct inclist *newfile)
-{
-	register int i;
-
-	if (ip == NULL)
-		return;
-	/*
-	 * Put this include file (newfile) on the list of files included
-	 * by 'file'.  If 'file' is NULL, then it is not an include
-	 * file itself (i.e. was probably mentioned on the command line).
-	 * If it is already on the list, don't stick it on again.
-	 */
-	if (ip->i_list == NULL) {
-		ip->i_list = (struct inclist **)
-			malloc(sizeof(struct inclist *) * ++ip->i_listlen);
-		ip->i_merged = (boolean *)
-		    malloc(sizeof(boolean) * ip->i_listlen);
-	} else {
-		for (i=0; i<ip->i_listlen; i++)
-			if (ip->i_list[ i ] == newfile) {
-			    i = strlen(newfile->i_file);
-			    if (!(ip->i_flags & INCLUDED_SYM) &&
-				!(i > 2 &&
-				  newfile->i_file[i-1] == 'c' &&
-				  newfile->i_file[i-2] == '.'))
-			    {
-				/* only bitch if ip has */
-				/* no #include SYMBOL lines  */
-				/* and is not a .c file */
-				if (warn_multiple)
-				{
-					warning("%s includes %s more than once!\n",
-						ip->i_file, newfile->i_file);
-					warning1("Already have\n");
-					for (i=0; i<ip->i_listlen; i++)
-						warning1("\t%s\n", ip->i_list[i]->i_file);
-				}
-			    }
-			    return;
-			}
-		ip->i_list = (struct inclist **) realloc(ip->i_list,
-			sizeof(struct inclist *) * ++ip->i_listlen);
-		ip->i_merged = (boolean *)
-		    realloc(ip->i_merged, sizeof(boolean) * ip->i_listlen);
-	}
-	ip->i_list[ ip->i_listlen-1 ] = newfile;
-	ip->i_merged[ ip->i_listlen-1 ] = FALSE;
-}
-
-void
-inc_clean (void)
-{
-	register struct inclist *ip;
-
-	for (ip = inclist; ip < inclistp; ip++) {
-		ip->i_flags &= ~MARKED;
-	}
-}
-
-struct inclist *
-inc_path(char *file, char *include, int type)
-{
-	static char		path[ BUFSIZ ];
-	register char		**pp, *p;
-	register struct inclist	*ip;
-
-	/*
-	 * Check all previously found include files for a path that
-	 * has already been expanded.
-	 */
-	if ((type == INCLUDE) || (type == INCLUDEDOT))
-		inclistnext = inclist;
-	ip = inclistnext;
-
-	for (; ip->i_file; ip++) {
-		if ((strcmp(ip->i_incstring, include) == 0) &&
-		    !(ip->i_flags & INCLUDED_SYM)) {
-			inclistnext = ip + 1;
-			return ip;
-		}
-	}
-
-	if (inclistnext == inclist) {
-		/*
-		 * If the path was surrounded by "" or is an absolute path,
-		 * then check the exact path provided.
-		 */
-		if ((type == INCLUDEDOT) ||
-		    (type == INCLUDENEXTDOT) ||
-		    (*include == '/')) {
-			if (does_file_exist(include))
-				return newinclude(include, include);
-			if (show_where_not)
-				warning1("\tnot in %s\n", include);
-		}
-
-		/*
-		 * If the path was surrounded by "" see if this include file is
-		 * in the directory of the file being parsed.
-		 */
-		if ((type == INCLUDEDOT) || (type == INCLUDENEXTDOT)) {
-			for (p=file+strlen(file); p>file; p--)
-				if (*p == '/')
-					break;
-			if (p == file) {
-				strcpy(path, include);
-			} else {
-				strncpy(path, file, (p-file) + 1);
-				path[ (p-file) + 1 ] = '\0';
-				strcpy(path + (p-file) + 1, include);
-			}
-			remove_dotdot(path);
-			if (does_file_exist(path))
-				return newinclude(path, include);
-			if (show_where_not)
-				warning1("\tnot in %s\n", path);
-		}
-	}
-
-	/*
-	 * Check the include directories specified.  Standard include dirs
-	 * should be at the end.
-	 */
-	if ((type == INCLUDE) || (type == INCLUDEDOT))
-		includedirsnext = includedirs;
-	pp = includedirsnext;
-
-	for (; *pp; pp++) {
-		sprintf(path, "%s/%s", *pp, include);
-		remove_dotdot(path);
-		if (does_file_exist(path)) {
-			includedirsnext = pp + 1;
-			return newinclude(path, include);
-		}
-		if (show_where_not)
-			warning1("\tnot in %s\n", path);
-	}
-
-	return NULL;
-}
deleted file mode 100644
--- a/config/mkdepend/main.c
+++ /dev/null
@@ -1,860 +0,0 @@
-/* $Xorg: main.c,v 1.5 2001/02/09 02:03:16 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
-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/makedepend/main.c,v 3.32 2003/03/26 20:43:48 tsi Exp $ */
-
-#include "def.h"
-#ifdef hpux
-#define sigvec sigvector
-#endif /* hpux */
-
-#ifdef X_POSIX_C_SOURCE
-#define _POSIX_C_SOURCE X_POSIX_C_SOURCE
-#include <signal.h>
-#undef _POSIX_C_SOURCE
-#else
-#if defined(X_NOT_POSIX) || defined(_POSIX_SOURCE)
-#include <signal.h>
-#else
-#define _POSIX_SOURCE
-#include <signal.h>
-#undef _POSIX_SOURCE
-#endif
-#endif
-
-#include <stdarg.h>
-
-#ifdef MINIX
-#define USE_CHMOD	1
-#endif
-
-#ifdef DEBUG
-int	_debugmask;
-#endif
-
-/* #define DEBUG_DUMP */
-#ifdef DEBUG_DUMP
-#define DBG_PRINT(file, fmt, args)   fprintf(file, fmt, args)
-#else
-#define DBG_PRINT(file, fmt, args)   /* empty */
-#endif
-
-#define DASH_INC_PRE    "#include \""
-#define DASH_INC_POST   "\""
-
-char *ProgramName;
-
-char	*directives[] = {
-	"if",
-	"ifdef",
-	"ifndef",
-	"else",
-	"endif",
-	"define",
-	"undef",
-	"include",
-	"line",
-	"pragma",
-	"error",
-	"ident",
-	"sccs",
-	"elif",
-	"eject",
-	"warning",
-	"include_next",
-	NULL
-};
-
-#define MAKEDEPEND
-#include "imakemdep.h"	/* from config sources */
-#undef MAKEDEPEND
-
-struct	inclist inclist[ MAXFILES ],
-		*inclistp = inclist,
-		*inclistnext = inclist,
-		maininclist;
-
-static char	*filelist[ MAXFILES ];
-char		*includedirs[ MAXDIRS + 1 ],
-		**includedirsnext = includedirs;
-char		*notdotdot[ MAXDIRS ];
-static int	cmdinc_count = 0;
-static char	*cmdinc_list[ 2 * MAXINCFILES ];
-char		*objprefix = "";
-char		*objsuffix = OBJSUFFIX;
-static char	*startat = "# DO NOT DELETE";
-int		width = 78;
-static boolean	append = FALSE;
-boolean		printed = FALSE;
-boolean		verbose = FALSE;
-boolean		show_where_not = FALSE;
-/* Warn on multiple includes of same file */
-boolean 	warn_multiple = FALSE;
-
-static void setfile_cmdinc(struct filepointer *filep, long count, char **list);
-static void redirect(char *line, char *makefile);
-
-static
-#ifdef SIGNALRETURNSINT
-int
-#else
-void
-#endif
-catch (int sig)
-{
-	fflush (stdout);
-	fatalerr ("got signal %d\n", sig);
-}
-
-#if defined(USG) || (defined(i386) && defined(SYSV)) || defined(WIN32) || defined(__UNIXOS2__) || defined(Lynx_22) || defined(__CYGWIN__)
-#define USGISH
-#endif
-
-#ifndef USGISH
-#ifdef X_NOT_POSIX
-#define sigaction sigvec
-#define sa_handler sv_handler
-#define sa_mask sv_mask
-#define sa_flags sv_flags
-#endif
-struct sigaction sig_act;
-#endif /* USGISH */
-
-int
-main(int argc, char *argv[])
-{
-	char	**fp = filelist;
-	char	**incp = includedirs;
-	char	*p;
-	struct inclist	*ip;
-	char	*makefile = NULL;
-	struct filepointer	*filecontent;
-	struct symtab *psymp = predefs;
-	char *endmarker = NULL;
-	char *defincdir = NULL;
-	char **undeflist = NULL;
-	int numundefs = 0, i;
-	register char offset;
-
-	ProgramName = argv[0];
-
-	while (psymp->s_name)
-	{
-	    define2(psymp->s_name, psymp->s_value, &maininclist);
-	    psymp++;
-	}
-	if (argc == 2 && argv[1][0] == '@') {
-	    struct stat ast;
-	    int afd;
-	    char *args;
-	    char **nargv;
-	    int nargc;
-	    char quotechar = '\0';
-
-	    nargc = 1;
-	    if ((afd = open(argv[1]+1, O_RDONLY)) < 0)
-		fatalerr("cannot open \"%s\"\n", argv[1]+1);
-	    fstat(afd, &ast);
-	    args = (char *)malloc(ast.st_size + 1);
-	    if ((ast.st_size = read(afd, args, ast.st_size)) < 0)
-		fatalerr("failed to read %s\n", argv[1]+1);
-	    args[ast.st_size] = '\0';
-	    close(afd);
-	    for (p = args; *p; p++) {
-		if (quotechar) {
-		    if (quotechar == '\\' ||
-			(*p == quotechar && p[-1] != '\\'))
-			quotechar = '\0';
-		    continue;
-		}
-		switch (*p) {
-		case '\\':
-		case '"':
-		case '\'':
-		    quotechar = *p;
-		    break;
-		case ' ':
-		case '\n':
-		    *p = '\0';
-		    if (p > args && p[-1])
-			nargc++;
-		    break;
-		}
-	    }
-	    if (p[-1])
-		nargc++;
-	    nargv = (char **)malloc(nargc * sizeof(char *));
-	    nargv[0] = argv[0];
-	    argc = 1;
-	    for (p = args; argc < nargc; p += strlen(p) + 1)
-		if (*p) nargv[argc++] = p;
-	    argv = nargv;
-	}
-	for(argc--, argv++; argc; argc--, argv++) {
-	    	/* if looking for endmarker then check before parsing */
-		if (endmarker && strcmp (endmarker, *argv) == 0) {
-		    endmarker = NULL;
-		    continue;
-		}
-		if (**argv != '-') {
-			/* treat +thing as an option for C++ */
-			if (endmarker && **argv == '+')
-				continue;
-			*fp++ = argv[0];
-			continue;
-		}
-		switch(argv[0][1]) {
-		case '-':
-			endmarker = &argv[0][2];
-			if (endmarker[0] == '\0') endmarker = "--";
-			break;
-		case 'D':
-			offset = 2;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				offset = 0;
-			}
-			/* offset +1 here since first def letter
-			 * cannot be `=`
-			 */
-			for (p = argv[0] + offset + 1; *p; p++)
-				if (*p == '=') {
-					*p = ' ';
-					break;
-				}
-			define(argv[0] + offset, &maininclist);
-			break;
-		case 'I':
-			if (incp >= includedirs + MAXDIRS)
-			    fatalerr("Too many -I flags.\n");
-			*incp++ = argv[0]+2;
-			if (**(incp-1) == '\0') {
-				*(incp-1) = *(++argv);
-				argc--;
-			}
-			break;
-		case 'U':
-			/* Undef's override all -D's so save them up */
-			numundefs++;
-			if (numundefs == 1)
-			    undeflist = malloc(sizeof(char *));
-			else
-			    undeflist = realloc(undeflist,
-						numundefs * sizeof(char *));
-			offset = 2;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				offset = 0;
-			}
-			undeflist[numundefs - 1] = argv[0] + offset;
-			break;
-		case 'Y':
-			defincdir = argv[0]+2;
-			break;
-		/* do not use if endmarker processing */
-		case 'a':
-			if (endmarker) break;
-			append = TRUE;
-			break;
-		case 'w':
-			if (endmarker) break;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				width = atoi(argv[0]);
-			} else
-				width = atoi(argv[0]+2);
-			break;
-		case 'o':
-			if (endmarker) break;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				objsuffix = argv[0];
-			} else
-				objsuffix = argv[0]+2;
-			break;
-		case 'p':
-			if (endmarker) break;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				objprefix = argv[0];
-			} else
-				objprefix = argv[0]+2;
-			break;
-		case 'v':
-			if (endmarker) break;
-			verbose = TRUE;
-#ifdef DEBUG
-			if (argv[0][2])
-				_debugmask = atoi(argv[0]+2);
-#endif
-			break;
-		case 's':
-			if (endmarker) break;
-			startat = argv[0]+2;
-			if (*startat == '\0') {
-				startat = *(++argv);
-				argc--;
-			}
-			if (*startat != '#')
-				fatalerr("-s flag's value should start %s\n",
-					"with '#'.");
-			break;
-		case 'f':
-			if (endmarker) break;
-			makefile = argv[0]+2;
-			if (*makefile == '\0') {
-				makefile = *(++argv);
-				argc--;
-			}
-			break;
-
-		case 'm':
-			warn_multiple = TRUE;
-			break;
-			
-		/* Ignore -O, -g so we can just pass ${CFLAGS} to
-		   makedepend
-		 */
-		case 'O':
-		case 'g':
-			break;
-		case 'i':
-			if (strcmp(&argv[0][1],"include") == 0) {
-				char *buf;
-				if (argc<2)
-					fatalerr("option -include is a "
-						 "missing its parameter\n");
-				if (cmdinc_count >= MAXINCFILES)
-					fatalerr("Too many -include flags.\n");
-				argc--;
-				argv++;
-				buf = malloc(strlen(DASH_INC_PRE) +
-					     strlen(argv[0]) +
-					     strlen(DASH_INC_POST) + 1);
-                		if(!buf)
-					fatalerr("out of memory at "
-						 "-include string\n");
-				cmdinc_list[2 * cmdinc_count + 0] = argv[0];
-				cmdinc_list[2 * cmdinc_count + 1] = buf;
-				cmdinc_count++;
-				break;
-			}
-			/* intentional fall through */
-		default:
-			if (endmarker) break;
-	/*		fatalerr("unknown opt = %s\n", argv[0]); */
-			warning("ignoring option %s\n", argv[0]);
-		}
-	}
-	/* Now do the undefs from the command line */
-	for (i = 0; i < numundefs; i++)
-	    undefine(undeflist[i], &maininclist);
-	if (numundefs > 0)
-	    free(undeflist);
-
-	if (!defincdir) {
-#ifdef PREINCDIR
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = PREINCDIR;
-#endif
-#ifdef __UNIXOS2__
-	    {
-		char *emxinc = getenv("C_INCLUDE_PATH");
-		/* can have more than one component */
-		if (emxinc) {
-		    char *beg, *end;
-		    beg= (char*)strdup(emxinc);
-		    for (;;) {
-			end = (char*)strchr(beg,';');
-			if (end) *end = 0;
-		    	if (incp >= includedirs + MAXDIRS)
-				fatalerr("Too many include dirs\n");
-			*incp++ = beg;
-			if (!end) break;
-			beg = end+1;
-		    }
-		}
-	    }
-#else /* !__UNIXOS2__, does not use INCLUDEDIR at all */
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = INCLUDEDIR;
-#endif
-
-#ifdef EXTRAINCDIR
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = EXTRAINCDIR;
-#endif
-
-#ifdef POSTINCDIR
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = POSTINCDIR;
-#endif
-	} else if (*defincdir) {
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = defincdir;
-	}
-
-	redirect(startat, makefile);
-
-	/*
-	 * catch signals.
-	 */
-#ifdef USGISH
-/*  should really reset SIGINT to SIG_IGN if it was.  */
-#ifdef SIGHUP
-	signal (SIGHUP, catch);
-#endif
-	signal (SIGINT, catch);
-#ifdef SIGQUIT
-	signal (SIGQUIT, catch);
-#endif
-	signal (SIGILL, catch);
-#ifdef SIGBUS
-	signal (SIGBUS, catch);
-#endif
-	signal (SIGSEGV, catch);
-#ifdef SIGSYS
-	signal (SIGSYS, catch);
-#endif
-#else
-	sig_act.sa_handler = catch;
-#if defined(_POSIX_SOURCE) || !defined(X_NOT_POSIX)
-	sigemptyset(&sig_act.sa_mask);
-	sigaddset(&sig_act.sa_mask, SIGINT);
-	sigaddset(&sig_act.sa_mask, SIGQUIT);
-#ifdef SIGBUS
-	sigaddset(&sig_act.sa_mask, SIGBUS);
-#endif
-	sigaddset(&sig_act.sa_mask, SIGILL);
-	sigaddset(&sig_act.sa_mask, SIGSEGV);
-	sigaddset(&sig_act.sa_mask, SIGHUP);
-	sigaddset(&sig_act.sa_mask, SIGPIPE);
-#ifdef SIGSYS
-	sigaddset(&sig_act.sa_mask, SIGSYS);
-#endif
-#else
-	sig_act.sa_mask = ((1<<(SIGINT -1))
-			   |(1<<(SIGQUIT-1))
-#ifdef SIGBUS
-			   |(1<<(SIGBUS-1))
-#endif
-			   |(1<<(SIGILL-1))
-			   |(1<<(SIGSEGV-1))
-			   |(1<<(SIGHUP-1))
-			   |(1<<(SIGPIPE-1))
-#ifdef SIGSYS
-			   |(1<<(SIGSYS-1))
-#endif
-			   );
-#endif /* _POSIX_SOURCE */
-	sig_act.sa_flags = 0;
-	sigaction(SIGHUP, &sig_act, (struct sigaction *)0);
-	sigaction(SIGINT, &sig_act, (struct sigaction *)0);
-	sigaction(SIGQUIT, &sig_act, (struct sigaction *)0);
-	sigaction(SIGILL, &sig_act, (struct sigaction *)0);
-#ifdef SIGBUS
-	sigaction(SIGBUS, &sig_act, (struct sigaction *)0);
-#endif
-	sigaction(SIGSEGV, &sig_act, (struct sigaction *)0);
-#ifdef SIGSYS
-	sigaction(SIGSYS, &sig_act, (struct sigaction *)0);
-#endif
-#endif /* USGISH */
-
-	/*
-	 * now peruse through the list of files.
-	 */
-	for(fp=filelist; *fp; fp++) {
-		DBG_PRINT(stderr,"file: %s\n",*fp);
-		filecontent = getfile(*fp);
-		setfile_cmdinc(filecontent, cmdinc_count, cmdinc_list);
-		ip = newinclude(*fp, (char *)NULL);
-
-		find_includes(filecontent, ip, ip, 0, FALSE);
-		freefile(filecontent);
-		recursive_pr_include(ip, ip->i_file, base_name(*fp));
-		inc_clean();
-	}
-	if (printed)
-		printf("\n");
-	return 0;
-}
-
-#ifdef __UNIXOS2__
-/*
- * eliminate \r chars from file
- */
-static int 
-elim_cr(char *buf, int sz)
-{
-	int i,wp;
-	for (i= wp = 0; i<sz; i++) {
-		if (buf[i] != '\r')
-			buf[wp++] = buf[i];
-	}
-	return wp;
-}
-#endif
-
-struct filepointer *
-getfile(char *file)
-{
-	int	fd;
-	struct filepointer	*content;
-	struct stat	st;
-
-	content = (struct filepointer *)malloc(sizeof(struct filepointer));
-	content->f_name = file;
-	if ((fd = open(file, O_RDONLY)) < 0) {
-		warning("cannot open \"%s\"\n", file);
-		content->f_p = content->f_base = content->f_end = (char *)malloc(1);
-		*content->f_p = '\0';
-		return(content);
-	}
-	fstat(fd, &st);
-	content->f_base = (char *)malloc(st.st_size+1);
-	if (content->f_base == NULL)
-		fatalerr("cannot allocate mem\n");
-	if ((st.st_size = read(fd, content->f_base, st.st_size)) < 0)
-		fatalerr("failed to read %s\n", file);
-#ifdef __UNIXOS2__
-	st.st_size = elim_cr(content->f_base,st.st_size);
-#endif
-	close(fd);
-	content->f_len = st.st_size+1;
-	content->f_p = content->f_base;
-	content->f_end = content->f_base + st.st_size;
-	*content->f_end = '\0';
-	content->f_line = 0;
-	content->cmdinc_count = 0;
-	content->cmdinc_list = NULL;
-	content->cmdinc_line = 0;
-	return(content);
-}
-
-void
-setfile_cmdinc(struct filepointer* filep, long count, char** list)
-{
-	filep->cmdinc_count = count;
-	filep->cmdinc_list = list;
-	filep->cmdinc_line = 0;
-}
-
-void
-freefile(struct filepointer *fp)
-{
-	free(fp->f_base);
-	free(fp);
-}
-
-char *copy(char *str)
-{
-	char	*p = (char *)malloc(strlen(str) + 1);
-
-	strcpy(p, str);
-	return(p);
-}
-
-int
-match(char *str, char **list)
-{
-	int	i;
-
-	for (i=0; *list; i++, list++)
-		if (strcmp(str, *list) == 0)
-			return(i);
-	return(-1);
-}
-
-/*
- * Get the next line.  We only return lines beginning with '#' since that
- * is all this program is ever interested in.
- */
-char *getnextline(struct filepointer *filep)
-{
-	char	*p,	/* walking pointer */
-		*eof,	/* end of file pointer */
-		*bol;	/* beginning of line pointer */
-	int	lineno;	/* line number */
-	boolean whitespace = FALSE;
-
-	/*
-	 * Fake the "-include" line files in form of #include to the
-	 * start of each file.
-	 */
-	if (filep->cmdinc_line < filep->cmdinc_count) {
-		char *inc = filep->cmdinc_list[2 * filep->cmdinc_line + 0];
-		char *buf = filep->cmdinc_list[2 * filep->cmdinc_line + 1];
-		filep->cmdinc_line++;
-		sprintf(buf,"%s%s%s",DASH_INC_PRE,inc,DASH_INC_POST);
-		DBG_PRINT(stderr,"%s\n",buf);
-		return(buf);
-	}
-
-	p = filep->f_p;
-	eof = filep->f_end;
-	if (p >= eof)
-		return((char *)NULL);
-	lineno = filep->f_line;
-
-	for (bol = p--; ++p < eof; ) {
-		if ((bol == p) && ((*p == ' ') || (*p == '\t')))
-		{
-			/* Consume leading white-spaces for this line */
-			while (((p+1) < eof) && ((*p == ' ') || (*p == '\t')))
-			{
-				p++;
-				bol++;
-			}
-			whitespace = TRUE;
-		}
-        
-		if (*p == '/' && (p+1) < eof && *(p+1) == '*') {
-			/* Consume C comments */
-			*(p++) = ' ';
-			*(p++) = ' ';
-			while (p < eof && *p) {
-				if (*p == '*' && (p+1) < eof && *(p+1) == '/') {
-					*(p++) = ' ';
-					*(p++) = ' ';
-					break;
-				}
-				if (*p == '\n')
-					lineno++;
-				*(p++) = ' ';
-			}
-			--p;
-		}
-		else if (*p == '/' && (p+1) < eof && *(p+1) == '/') {
-			/* Consume C++ comments */
-			*(p++) = ' ';
-			*(p++) = ' ';
-			while (p < eof && *p) {
-				if (*p == '\\' && (p+1) < eof &&
-				    *(p+1) == '\n') {
-					*(p++) = ' ';
-					lineno++;
-				}
-				else if (*p == '?' && (p+3) < eof &&
-					 *(p+1) == '?' && 
-					 *(p+2) == '/' &&
-					 *(p+3) == '\n') {
-					*(p++) = ' ';
-					*(p++) = ' ';
-					*(p++) = ' ';
-					lineno++;
-				}
-				else if (*p == '\n')
-					break;	/* to process end of line */
-				*(p++) = ' ';
-			}
-			--p;
-		}
-		else if (*p == '\\' && (p+1) < eof && *(p+1) == '\n') {
-			/* Consume backslash line terminations */
-			*(p++) = ' ';
-			*p = ' ';
-			lineno++;
-		}
-		else if (*p == '?' && (p+3) < eof &&
-			 *(p+1) == '?' && *(p+2) == '/' && *(p+3) == '\n') {
-			/* Consume trigraph'ed backslash line terminations */
-			*(p++) = ' ';
-			*(p++) = ' ';
-			*(p++) = ' ';
-			*p = ' ';
-			lineno++;
-		}
-		else if (*p == '\n') {
-			lineno++;
-			if (*bol == '#') {
-				char *cp;
-
-				*(p++) = '\0';
-				/* punt lines with just # (yacc generated) */
-				for (cp = bol+1; 
-				     *cp && (*cp == ' ' || *cp == '\t'); cp++);
-				if (*cp) goto done;
-				--p;
-			}
-			bol = p+1;
-			whitespace = FALSE;
-		}
-	}
-	if (*bol != '#')
-		bol = NULL;
-done:
-	if (bol && whitespace) {
-		warning("%s:  non-portable whitespace encountered at line %d\n",
-			filep->f_name, lineno);
-	}
-	filep->f_p = p;
-	filep->f_line = lineno;
-#ifdef DEBUG_DUMP
-	if (bol)
-		DBG_PRINT(stderr,"%s\n",bol);
-#endif
-	return(bol);
-}
-
-/*
- * Strip the file name down to what we want to see in the Makefile.
- * It will have objprefix and objsuffix around it.
- */
-char *base_name(char *file)
-{
-	char	*p;
-
-	file = copy(file);
-	for(p=file+strlen(file); p>file && *p != '.'; p--) ;
-
-	if (*p == '.')
-		*p = '\0';
-	return(file);
-}
-
-#if defined(USG) && !defined(CRAY) && !defined(SVR4) && !defined(__UNIXOS2__) && !defined(clipper) && !defined(__clipper__)
-int rename (char *from, char *to)
-{
-    (void) unlink (to);
-    if (link (from, to) == 0) {
-	unlink (from);
-	return 0;
-    } else {
-	return -1;
-    }
-}
-#endif /* USGISH */
-
-void
-redirect(char *line, char *makefile)
-{
-	struct stat	st;
-	FILE	*fdin, *fdout;
-	char	backup[ BUFSIZ ],
-		buf[ BUFSIZ ];
-	boolean	found = FALSE;
-	int	len;
-
-	/*
-	 * if makefile is "-" then let it pour onto stdout.
-	 */
-	if (makefile && *makefile == '-' && *(makefile+1) == '\0') {
-		puts(line);
-		return;
-	}
-
-	/*
-	 * use a default makefile is not specified.
-	 */
-	if (!makefile) {
-		if (stat("Makefile", &st) == 0)
-			makefile = "Makefile";
-		else if (stat("makefile", &st) == 0)
-			makefile = "makefile";
-		else
-			fatalerr("[mM]akefile is not present\n");
-	}
-	else
-	    stat(makefile, &st);
-	if ((fdin = fopen(makefile, "r")) == NULL)
-		fatalerr("cannot open \"%s\"\n", makefile);
-	sprintf(backup, "%s.bak", makefile);
-	unlink(backup);
-#if defined(WIN32) || defined(__UNIXOS2__) || defined(__CYGWIN__)
-	fclose(fdin);
-#endif
-	if (rename(makefile, backup) < 0)
-		fatalerr("cannot rename %s to %s\n", makefile, backup);
-#if defined(WIN32) || defined(__UNIXOS2__) || defined(__CYGWIN__)
-	if ((fdin = fopen(backup, "r")) == NULL)
-		fatalerr("cannot open \"%s\"\n", backup);
-#endif
-	if ((fdout = freopen(makefile, "w", stdout)) == NULL)
-		fatalerr("cannot open \"%s\"\n", backup);
-	len = strlen(line);
-	while (!found && fgets(buf, BUFSIZ, fdin)) {
-		if (*buf == '#' && strncmp(line, buf, len) == 0)
-			found = TRUE;
-		fputs(buf, fdout);
-	}
-	if (!found) {
-		if (verbose)
-		warning("Adding new delimiting line \"%s\" and dependencies...\n",
-			line);
-		puts(line); /* same as fputs(fdout); but with newline */
-	} else if (append) {
-	    while (fgets(buf, BUFSIZ, fdin)) {
-		fputs(buf, fdout);
-	    }
-	}
-	fflush(fdout);
-#if defined(USGISH) || defined(_SEQUENT_) || defined(USE_CHMOD)
-	chmod(makefile, st.st_mode);
-#else
-        fchmod(fileno(fdout), st.st_mode);
-#endif /* USGISH */
-}
-
-void
-fatalerr(char *msg, ...)
-{
-	va_list args;
-	fprintf(stderr, "%s: error:  ", ProgramName);
-	va_start(args, msg);
-	vfprintf(stderr, msg, args);
-	va_end(args);
-	exit (1);
-}
-
-void
-warning(char *msg, ...)
-{
-	va_list args;
-	fprintf(stderr, "%s: warning:  ", ProgramName);
-	va_start(args, msg);
-	vfprintf(stderr, msg, args);
-	va_end(args);
-}
-
-void
-warning1(char *msg, ...)
-{
-	va_list args;
-	va_start(args, msg);
-	vfprintf(stderr, msg, args);
-	va_end(args);
-}
deleted file mode 100644
--- a/config/mkdepend/mkdepend.man
+++ /dev/null
@@ -1,382 +0,0 @@
-.\" $Xorg: mkdepend.man,v 1.5 2001/02/09 02:03:16 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 
-.\" dealing in this Software without prior written authorization from The
-.\" Open Group.
-.\"
-.\" $XFree86: xc/config/makedepend/mkdepend.man,v 1.7 2002/12/14 02:39:45 dawes Exp $
-.\"
-.TH MAKEDEPEND 1 __xorgversion__
-.UC 4
-.SH NAME
-makedepend \- create dependencies in makefiles
-.SH SYNOPSIS
-.B makedepend
-[
-.BI \-D name\fB=\fPdef
-] [
-.BI \-D name
-] [
-.BI \-I includedir
-] [
-.BI \-Y includedir
-] [
-.B \-a
-] [
-.BI \-f makefile
-] [
-.BI \-include \ file
-] [
-.BI \-o objsuffix
-] [
-.BI \-p objprefix
-] [
-.BI \-s string
-] [
-.BI \-w width
-] [
-.B \-v
-] [
-.B \-m
-] [
-\-\^\-
-.I otheroptions
-\-\^\-
-]
-.I sourcefile
-\&.\|.\|.
-.br
-.SH DESCRIPTION
-The
-.B makedepend
-program reads each
-.I sourcefile
-in sequence and parses it like a C-preprocessor,
-processing all
-.I #include,
-.I #define,
-.I #undef,
-.I #ifdef,
-.I #ifndef,
-.I #endif,
-.I #if,
-.I #elif
-and
-.I #else
-directives so that it can correctly tell which
-.I #include,
-directives would be used in a compilation.
-Any
-.I #include,
-directives can reference files having other
-.I #include
-directives, and parsing will occur in these files as well.
-.PP
-Every file that a
-.I sourcefile
-includes,
-directly or indirectly,
-is what
-.B makedepend
-calls a \fIdependency.\fP
-These dependencies are then written to a
-.I makefile
-in such a way that
-.B make(1)
-will know which object files must be recompiled when a dependency has changed.
-.PP
-By default,
-.B makedepend
-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
-the line
-.sp
-\&    # DO NOT DELETE THIS LINE \-\^\- make depend depends on it.
-.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 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 end of the makefile
-and place the output following that.
-For each
-.I sourcefile
-appearing on the command line,
-.B makedepend
-puts lines in the makefile of the form
-.sp
-     sourcefile.o:\0dfile .\|.\|.
-.sp
-Where \fIsourcefile.o\fP is the name from the command
-line with its suffix replaced with ``.o'',
-and \fIdfile\fP is a dependency discovered in a
-.I #include
-directive while parsing
-.I sourcefile
-or one of the files it included.
-.SH EXAMPLE
-Normally,
-.B makedepend
-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:
-            makedepend\0\-\^\-\0$(CFLAGS)\0\-\^\-\0$(SRCS)
-.fi
-.SH OPTIONS
-The program
-will ignore any option that it does not understand so that you may use
-the same arguments that you would for
-.B cc(1).
-.TP 5
-.B \-D\fIname\fP=\fIdef\fP \fRor\fP \-D\fIname\fP
-Define.
-This places a definition for
-.I name
-in
-.B makedepend's
-symbol table.
-Without 
-.I =def\|
-the symbol becomes defined as ``1''.
-.TP 5
-.B \-I\fIincludedir\fP
-Include directory.
-This option tells
-.B makedepend
-to prepend
-.I includedir
-to its list of directories to search when it encounters
-a
-.I #include
-directive.
-By default,
-.B makedepend
-only searches the standard include directories (usually /usr/include
-and possibly a compiler-dependent directory).
-.TP 5
-.B \-Y\fIincludedir\fP
-Replace all of the standard include directories with the single specified
-include directory; you can omit the
-.I includedir
-to simply prevent searching the standard include directories.
-.TP 5
-.B \-a
-Append the dependencies to the end of the file instead of replacing them. 
-.TP 5
-.B \-f\fImakefile\fP
-Filename.
-This allows you to specify an alternate makefile in which
-.B makedepend
-can place its output.
-Specifying ``\-'' as the file name (i.e., \fB\-f\-\fP) sends the
-output to standard output instead of modifying an existing file.
-.TP 5
-.B \-include \fIfile\fP
-Process file as input, and include all the resulting output
-before processing the regular input file. This has the same
-affect as if the specified file is an include statement that
-appears before the very first line of the regular input file.
-.TP 5
-.B \-o\fIobjsuffix\fP
-Object file suffix.
-Some systems may have object files whose suffix is something other
-than ``.o''.
-This option allows you to specify another suffix, such as
-``.b'' with
-.I \-o.b
-or ``:obj''
-with
-.I \-o:obj
-and so forth.
-.TP 5
-.B \-p\fIobjprefix\fP
-Object file prefix.
-The prefix is prepended to the name of the object file. This is
-usually used to designate a different directory for the object file.
-The default is the empty string.
-.TP 5
-.B \-s\fIstring\fP
-Starting string delimiter.
-This option permits you to specify
-a different string for
-.B makedepend
-to look for in the makefile.
-.TP 5
-.B \-w\fIwidth\fP
-Line width.
-Normally,
-.B makedepend
-will ensure that every output line that it writes will be no wider than
-78 characters for the sake of readability.
-This option enables you to change this width.
-.TP 5
-.B \-v
-Verbose operation.
-This option causes 
-.B makedepend
-to emit the list of files included by each input file.
-.TP 5
-.B \-m
-Warn about multiple inclusion.
-This option causes 
-.B makedepend
-to produce a warning if any input file includes another file more than
-once.  In previous versions of 
-.B makedepend
-this was the default behavior; the default has been changed to better
-match the behavior of the C compiler, which does not consider multiple
-inclusion to be an error.  This option is provided for backward 
-compatibility, and to aid in debugging problems related to multiple
-inclusion.
-.TP 5
-.B "\-\^\- \fIoptions\fP \-\^\-"
-If
-.B makedepend
-encounters a double hyphen (\-\^\-) in the argument list,
-then any unrecognized argument following it
-will be silently ignored; a second double hyphen terminates this
-special treatment.
-In this way,
-.B makedepend
-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).
-All options that
-.B makedepend
-recognizes and appear between the pair of double hyphens
-are processed normally.
-.SH ALGORITHM
-The approach used in this program enables it to run an order of magnitude
-faster than any other ``dependency generator'' I have ever seen.
-Central to this performance are two assumptions:
-that all files compiled by a single
-makefile will be compiled with roughly the same
-.I \-I
-and
-.I \-D
-options;
-and that most files in a single directory will include largely the
-same files.
-.PP
-Given these assumptions,
-.B makedepend
-expects to be called once for each makefile, with
-all source files that are maintained by the
-makefile appearing on the command line.
-It parses each source and include
-file exactly once, maintaining an internal symbol table
-for each.
-Thus, the first file on the command line will take an amount of time
-proportional to the amount of time that a normal C preprocessor takes.
-But on subsequent files, if it encounters an include file
-that it has already parsed, it does not parse it again.
-.PP
-For example,
-imagine you are compiling two files,
-.I file1.c
-and
-.I file2.c,
-they each include the header file
-.I header.h,
-and the file
-.I header.h
-in turn includes the files
-.I def1.h
-and
-.I def2.h.
-When you run the command
-.sp
-    makedepend\0file1.c\0file2.c
-.sp
-.B makedepend
-will parse
-.I file1.c
-and consequently,
-.I header.h
-and then
-.I def1.h
-and
-.I def2.h.
-It then decides that the dependencies for this file are
-.sp
-    file1.o:\0header.h\0def1.h\0def2.h
-.sp
-But when the program parses
-.I file2.c
-and discovers that it, too, includes
-.I header.h,
-it does not parse the file,
-but simply adds
-.I header.h,
-.I def1.h
-and
-.I def2.h
-to the list of dependencies for
-.I file2.o.
-.SH "SEE ALSO"
-cc(1), make(1)
-.SH BUGS
-.B makedepend
-parses, but does not currently evaluate, the SVR4 #predicate(token-list)
-preprocessor expression; such expressions are simply assumed to be true.
-This may cause the wrong
-.I #include
-directives to be evaluated.
-.PP
-Imagine you are parsing two files,
-say
-.I file1.c
-and
-.I file2.c,
-each includes the file
-.I def.h.
-The list of files that
-.I def.h
-includes might truly be different when
-.I def.h
-is included by
-.I file1.c
-than when it is included by
-.I file2.c.
-But once
-.B makedepend
-arrives at a list of dependencies for a file,
-it is cast in concrete.
-.SH AUTHOR
-Todd Brunhoff, Tektronix, Inc. and MIT Project Athena
deleted file mode 100644
--- a/config/mkdepend/parse.c
+++ /dev/null
@@ -1,686 +0,0 @@
-/* $Xorg: parse.c,v 1.6 2001/02/09 02:03:16 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/makedepend/parse.c,v 1.12 2002/02/26 05:09:10 tsi Exp $ */
-
-#include "def.h"
-
-extern char	*directives[];
-extern struct inclist	inclist[ MAXFILES ],
-			*inclistnext,
-			maininclist;
-extern char	*includedirs[ ],
-		**includedirsnext;
-
-static int deftype (char *line, struct filepointer *filep,
-		    struct inclist *file_red, struct inclist *file,
-		    int parse_it);
-static int zero_value(char *filename, char *exp, struct filepointer *filep,
-		    struct inclist *file_red);
-static int merge2defines(struct inclist *file1, struct inclist *file2);
-
-static int
-gobble(struct filepointer *filep, struct inclist *file,
-       struct inclist *file_red)
-{
-	char	*line;
-	int	type;
-
-	while ((line = getnextline(filep))) {
-		switch(type = deftype(line, filep, file_red, file, FALSE)) {
-		case IF:
-		case IFFALSE:
-		case IFGUESSFALSE:
-		case IFDEF:
-		case IFNDEF:
-			type = gobble(filep, file, file_red);
-			while ((type == ELIF) || (type == ELIFFALSE) ||
-			       (type == ELIFGUESSFALSE))
-			    type = gobble(filep, file, file_red);
-			if (type == ELSE)
-			        (void)gobble(filep, file, file_red);
-			break;
-		case ELSE:
-		case ENDIF:
-			debug(0,("%s, line %d: #%s\n",
-				file->i_file, filep->f_line,
-				directives[type]));
-			return(type);
-		case DEFINE:
-		case UNDEF:
-		case INCLUDE:
-		case INCLUDEDOT:
-		case PRAGMA:
-		case ERROR:
-		case IDENT:
-		case SCCS:
-		case EJECT:
-		case WARNING:
-		case INCLUDENEXT:
-		case INCLUDENEXTDOT:
-			break;
-		case ELIF:
-		case ELIFFALSE:
-		case ELIFGUESSFALSE:
-			return(type);
-		case -1:
-			warning("%s", file_red->i_file);
-			if (file_red != file)
-				warning1(" (reading %s)", file->i_file);
-			warning1(", line %d: unknown directive == \"%s\"\n",
-				filep->f_line, line);
-			break;
-		}
-	}
-	return(-1);
-}
-
-/*
- * Decide what type of # directive this line is.
- */
-static int 
-deftype (char *line, struct filepointer *filep, 
-	     struct inclist *file_red, struct inclist *file, int parse_it)
-{
-	register char	*p;
-	char	*directive, savechar, *q;
-	register int	ret;
-
-	/*
-	 * Parse the directive...
-	 */
-	directive=line+1;
-	while (*directive == ' ' || *directive == '\t')
-		directive++;
-
-	p = directive;
-	while ((*p == '_') || (*p >= 'a' && *p <= 'z'))
-		p++;
-	savechar = *p;
-	*p = '\0';
-	ret = match(directive, directives);
-	*p = savechar;
-
-	/* If we don't recognize this compiler directive or we happen to just
-	 * be gobbling up text while waiting for an #endif or #elif or #else
-	 * in the case of an #elif we must check the zero_value and return an
-	 * ELIF or an ELIFFALSE.
-	 */
-
-	if (ret == ELIF && !parse_it)
-	{
-	    while (*p == ' ' || *p == '\t')
-		p++;
-	    /*
-	     * parse an expression.
-	     */
-	    debug(0,("%s, line %d: #elif %s ",
-		   file->i_file, filep->f_line, p));
-	    ret = zero_value(file->i_file, p, filep, file_red);
-	    if (ret != IF)
-	    {
-		debug(0,("false...\n"));
-		if (ret == IFFALSE)
-		    return(ELIFFALSE);
-		else
-		    return(ELIFGUESSFALSE);
-	    }
-	    else
-	    {
-		debug(0,("true...\n"));
-		return(ELIF);
-	    }
-	}
-
-	if (ret < 0 || ! parse_it)
-		return(ret);
-
-	/*
-	 * now decide how to parse the directive, and do it.
-	 */
-	while (*p == ' ' || *p == '\t')
-		p++;
-	q = p + strlen(p);
-	do {
-		q--;
-	} while (*q == ' ' || *q == '\t');
-	q[1] = '\0';
-	switch (ret) {
-	case IF:
-		/*
-		 * parse an expression.
-		 */
-		ret = zero_value(file->i_file, p, filep, file_red);
-		debug(0,("%s, line %d: %s #if %s\n",
-			 file->i_file, filep->f_line, ret?"false":"true", p));
-		break;
-	case IFDEF:
-	case IFNDEF:
-		debug(0,("%s, line %d: #%s %s\n",
-			file->i_file, filep->f_line, directives[ret], p));
-	case UNDEF:
-		/*
-		 * separate the name of a single symbol.
-		 */
-		while (isalnum(*p) || *p == '_')
-			*line++ = *p++;
-		*line = '\0';
-		break;
-	case INCLUDE:
-	case INCLUDENEXT:
-		debug(2,("%s, line %d: #include%s %s\n",
-			file->i_file, filep->f_line,
-			(ret == INCLUDE) ? "" : "_next", p));
-
-		/* Support ANSI macro substitution */
-		while (1) {
-			struct symtab **sym;
-
-			if (!*p || *p == '"' || *p == '<')
-				break;
-
-		    	sym = isdefined(p, file_red, NULL);
-			if (!sym)
-				break;
-
-			p = (*sym)->s_value;
-			debug(3,("%s : #includes SYMBOL %s = %s\n",
-			       file->i_incstring,
-			       (*sym) -> s_name,
-			       (*sym) -> s_value));
-			/* mark file as having included a 'soft include' */
-			file->i_flags |= INCLUDED_SYM; 
-		}
-
-		/*
-		 * Separate the name of the include file.
-		 */
-		while (*p && *p != '"' && *p != '<')
-			p++;
-		if (! *p)
-			return(-2);
-		if (*p++ == '"') {
-			if (ret == INCLUDE)
-				ret = INCLUDEDOT;
-			else
-				ret = INCLUDENEXTDOT;
-			while (*p && *p != '"')
-				*line++ = *p++;
-		} else
-			while (*p && *p != '>')
-				*line++ = *p++;
-		*line = '\0';
-		break;
-	case DEFINE:
-		/*
-		 * copy the definition back to the beginning of the line.
-		 */
-		strcpy (line, p);
-		break;
-	case ELSE:
-	case ENDIF:
-	case ELIF:
-	case PRAGMA:
-	case ERROR:
-	case IDENT:
-	case SCCS:
-	case EJECT:
-	case WARNING:
-		debug(0,("%s, line %d: #%s\n",
-			file->i_file, filep->f_line, directives[ret]));
-		/*
-		 * nothing to do.
-		 */
-		break;
-	}
-	return(ret);
-}
-
-struct symtab **
-fdefined(char *symbol, struct inclist *file, struct inclist **srcfile)
-{
-	struct inclist	**ip;
-	struct symtab	**val;
-	int	i;
-	static int	recurse_lvl = 0;
-
-	if (file->i_flags & DEFCHECKED)
-		return(NULL);
-	debug(2,("Looking for %s in %s\n", symbol, file->i_file));
-	file->i_flags |= DEFCHECKED;
-	if ((val = slookup(symbol, file)))
-		debug(1,("%s defined in %s as %s\n",
-			 symbol, file->i_file, (*val)->s_value));
-	if (val == NULL && file->i_list)
-	{
-		for (ip = file->i_list, i=0; i < file->i_listlen; i++, ip++)
-			if (file->i_merged[i]==FALSE) {
-				val = fdefined(symbol, *ip, srcfile);
-				file->i_merged[i]=merge2defines(file,*ip);
-				if (val!=NULL) break;
-			}
-	}
-	else if (val != NULL && srcfile != NULL) *srcfile = file;
-	recurse_lvl--;
-	file->i_flags &= ~DEFCHECKED;
-
-	return(val);
-}
-
-struct symtab **
-isdefined(char *symbol, struct inclist *file, struct inclist **srcfile)
-{
-	struct symtab	**val;
-
-	if ((val = slookup(symbol, &maininclist))) {
-		debug(1,("%s defined on command line\n", symbol));
-		if (srcfile != NULL) *srcfile = &maininclist;
-		return(val);
-	}
-	if ((val = fdefined(symbol, file, srcfile)))
-		return(val);
-	debug(1,("%s not defined in %s\n", symbol, file->i_file));
-	return(NULL);
-}
-
-/*
- * Return type based on if the #if expression evaluates to 0
- */
-static int
-zero_value(char *filename,
-	   char *exp,
-	   struct filepointer *filep,
-	   struct inclist *file_red)
-{
-	if (cppsetup(filename, exp, filep, file_red))
-	    return(IFFALSE);
-	else
-	    return(IF);
-}
-
-void
-define2(char *name, char *val, struct inclist *file)
-{
-    int first, last, below;
-    register struct symtab **sp = NULL, **dest;
-    struct symtab *stab;
-
-    /* Make space if it's needed */
-    if (file->i_defs == NULL)
-    {
-	file->i_defs = (struct symtab **)
-			malloc(sizeof (struct symtab*) * SYMTABINC);
-	file->i_ndefs = 0;
-    }
-    else if (!(file->i_ndefs % SYMTABINC))
-	file->i_defs = (struct symtab **)
-			realloc(file->i_defs,
-			   sizeof(struct symtab*)*(file->i_ndefs+SYMTABINC));
-
-    if (file->i_defs == NULL)
-	fatalerr("malloc()/realloc() failure in insert_defn()\n");
-
-    below = first = 0;
-    last = file->i_ndefs - 1;
-    while (last >= first)
-    {
-	/* Fast inline binary search */
-	register char *s1;
-	register char *s2;
-	register int middle = (first + last) / 2;
-
-	/* Fast inline strchr() */
-	s1 = name;
-	s2 = file->i_defs[middle]->s_name;
-	while (*s1++ == *s2++)
-	    if (s2[-1] == '\0') break;
-
-	/* If exact match, set sp and break */
-	if (*--s1 == *--s2) 
-	{
-	    sp = file->i_defs + middle;
-	    break;
-	}
-
-	/* If name > i_defs[middle] ... */
-	if (*s1 > *s2) 
-	{
-	    below = first;
-	    first = middle + 1;
-	}
-	/* else ... */
-	else
-	{
-	    below = last = middle - 1;
-	}
-    }
-
-    /* Search is done.  If we found an exact match to the symbol name,
-       just replace its s_value */
-    if (sp != NULL)
-    {
-	debug(1,("redefining %s from %s to %s in file %s\n",
-		name, (*sp)->s_value, val, file->i_file));
-	free((*sp)->s_value);
-	(*sp)->s_value = copy(val);
-	return;
-    }
-
-    sp = file->i_defs + file->i_ndefs++;
-    dest = file->i_defs + below + 1;
-    while (sp > dest)
-    {
-	*sp = sp[-1];
-	sp--;
-    }
-    stab = (struct symtab *) malloc(sizeof (struct symtab));
-    if (stab == NULL)
-	fatalerr("malloc()/realloc() failure in insert_defn()\n");
-
-    debug(1,("defining %s to %s in file %s\n", name, val, file->i_file));
-    stab->s_name = copy(name);
-    stab->s_value = copy(val);
-    *sp = stab;
-}
-
-void
-define(char *def, struct inclist *file)
-{
-    char *val;
-
-    /* Separate symbol name and its value */
-    val = def;
-    while (isalnum(*val) || *val == '_')
-	val++;
-    if (*val)
-	*val++ = '\0';
-    while (*val == ' ' || *val == '\t')
-	val++;
-
-    if (!*val)
-	val = "1";
-    define2(def, val, file);
-}
-
-struct symtab **
-slookup(char *symbol, struct inclist *file)
-{
-	register int first = 0;
-	register int last = file->i_ndefs - 1;
-
-	if (file) while (last >= first)
-	{
-	    /* Fast inline binary search */
-	    register char *s1;
-	    register char *s2;
-	    register int middle = (first + last) / 2;
-
-	    /* Fast inline strchr() */
-	    s1 = symbol;
-	    s2 = file->i_defs[middle]->s_name;
-	    while (*s1++ == *s2++)
-	        if (s2[-1] == '\0') break;
-
-	    /* If exact match, we're done */
-	    if (*--s1 == *--s2) 
-	    {
-	        return file->i_defs + middle;
-	    }
-
-	    /* If symbol > i_defs[middle] ... */
-	    if (*s1 > *s2) 
-	    {
-	        first = middle + 1;
-	    }
-	    /* else ... */
-	    else
-	    {
-	        last = middle - 1;
-	    }
-	}
-	return(NULL);
-}
-
-static int 
-merge2defines(struct inclist *file1, struct inclist *file2)
-{
-	int i;
-
-	if ((file1==NULL) || (file2==NULL) ||
-	    !(file2->i_flags & FINISHED))
-		return 0;
-
-	for (i=0; i < file2->i_listlen; i++)
-		if (file2->i_merged[i]==FALSE)
-			return 0;
-
-	{
-		int first1 = 0;
-		int last1 = file1->i_ndefs - 1;
-
-		int first2 = 0;
-		int last2 = file2->i_ndefs - 1;
-
-                int first=0;
-                struct symtab** i_defs = NULL;
-		int deflen=file1->i_ndefs+file2->i_ndefs;
-
-		debug(2,("merging %s into %s\n",
-			file2->i_file, file1->i_file));
-
-                if (deflen>0)
-                { 
-                	/* make sure deflen % SYMTABINC == 0 is still true */
-                	deflen += (SYMTABINC - deflen % SYMTABINC) % SYMTABINC;
-                	i_defs=(struct symtab**)
-			    malloc(deflen*sizeof(struct symtab*));
-                	if (i_defs==NULL) return 0;
-        	}
-
-        	while ((last1 >= first1) && (last2 >= first2))
-        	{
-	    		char *s1=file1->i_defs[first1]->s_name;
-	    		char *s2=file2->i_defs[first2]->s_name;
-
-     			if (strcmp(s1,s2) < 0)
-                        	i_defs[first++]=file1->i_defs[first1++];
-     			else if (strcmp(s1,s2) > 0)
-                        	i_defs[first++]=file2->i_defs[first2++];
-                        else /* equal */
-                        {
-                        	i_defs[first++]=file2->i_defs[first2++];
-                                first1++;
-                        }
-        	}
-        	while (last1 >= first1)
-        	{
-                        i_defs[first++]=file1->i_defs[first1++];
-        	}
-        	while (last2 >= first2)
-        	{
-                        i_defs[first++]=file2->i_defs[first2++];
-        	}
-
-                if (file1->i_defs) free(file1->i_defs);
-                file1->i_defs=i_defs;
-                file1->i_ndefs=first;
-                
-		return 1;
-  	}
-}
-
-void
-undefine(char *symbol, struct inclist *file)
-{
-	register struct symtab **ptr;
-	struct inclist *srcfile;
-	while ((ptr = isdefined(symbol, file, &srcfile)) != NULL)
-	{
-	    srcfile->i_ndefs--;
-	    for (; ptr < srcfile->i_defs + srcfile->i_ndefs; ptr++)
-		*ptr = ptr[1];
-	}
-}
-
-int
-find_includes(struct filepointer *filep, struct inclist *file, 
-	      struct inclist *file_red, int recursion, boolean failOK)
-{
-	struct inclist	*inclistp;
-	char		**includedirsp;
-	register char	*line;
-	register int	type;
-	boolean recfailOK;
-
-	while ((line = getnextline(filep))) {
-		switch(type = deftype(line, filep, file_red, file, TRUE)) {
-		case IF:
-		doif:
-			type = find_includes(filep, file,
-				file_red, recursion+1, failOK);
-			while ((type == ELIF) || (type == ELIFFALSE) ||
-			       (type == ELIFGUESSFALSE))
-				type = gobble(filep, file, file_red);
-			if (type == ELSE)
-				gobble(filep, file, file_red);
-			break;
-		case IFFALSE:
-		case IFGUESSFALSE:
-		    doiffalse:
-			if (type == IFGUESSFALSE || type == ELIFGUESSFALSE)
-			    recfailOK = TRUE;
-			else
-			    recfailOK = failOK;
-			type = gobble(filep, file, file_red);
-			if (type == ELSE)
-			    find_includes(filep, file,
-					  file_red, recursion+1, recfailOK);
-			else
-			if (type == ELIF)
-			    goto doif;
-			else
-			if ((type == ELIFFALSE) || (type == ELIFGUESSFALSE))
-			    goto doiffalse;
-			break;
-		case IFDEF:
-		case IFNDEF:
-			if ((type == IFDEF && isdefined(line, file_red, NULL))
-			 || (type == IFNDEF && !isdefined(line, file_red, NULL))) {
-				debug(1,(type == IFNDEF ?
-				    "line %d: %s !def'd in %s via %s%s\n" : "",
-				    filep->f_line, line,
-				    file->i_file, file_red->i_file, ": doit"));
-				type = find_includes(filep, file,
-					file_red, recursion+1, failOK);
-				while (type == ELIF || type == ELIFFALSE || type == ELIFGUESSFALSE)
-					type = gobble(filep, file, file_red);
-				if (type == ELSE)
-					gobble(filep, file, file_red);
-			}
-			else {
-				debug(1,(type == IFDEF ?
-				    "line %d: %s !def'd in %s via %s%s\n" : "",
-				    filep->f_line, line,
-				    file->i_file, file_red->i_file, ": gobble"));
-				type = gobble(filep, file, file_red);
-				if (type == ELSE)
-					find_includes(filep, file,
-						file_red, recursion+1, failOK);
-				else if (type == ELIF)
-				    	goto doif;
-				else if (type == ELIFFALSE || type == ELIFGUESSFALSE)
-				    	goto doiffalse;
-			}
-			break;
-		case ELSE:
-		case ELIFFALSE:
-		case ELIFGUESSFALSE:
-		case ELIF:
-			if (!recursion)
-				gobble(filep, file, file_red);
-		case ENDIF:
-			if (recursion)
-				return(type);
-		case DEFINE:
-			define(line, file);
-			break;
-		case UNDEF:
-			if (!*line) {
-			    warning("%s", file_red->i_file);
-			    if (file_red != file)
-				warning1(" (reading %s)", file->i_file);
-			    warning1(", line %d: incomplete undef == \"%s\"\n",
-				filep->f_line, line);
-			    break;
-			}
-			undefine(line, file_red);
-			break;
-		case INCLUDE:
-		case INCLUDEDOT:
-		case INCLUDENEXT:
-		case INCLUDENEXTDOT:
-			inclistp = inclistnext;
-			includedirsp = includedirsnext;
-			debug(2,("%s, reading %s, includes %s\n",
-				file_red->i_file, file->i_file, line));
-			add_include(filep, file, file_red, line, type, failOK);
-			inclistnext = inclistp;
-			includedirsnext = includedirsp;
-			break;
-		case ERROR:
-		case WARNING:
-		    	warning("%s", file_red->i_file);
-			if (file_red != file)
-				warning1(" (reading %s)", file->i_file);
-			warning1(", line %d: %s\n",
-				 filep->f_line, line);
-		    	break;
-		    
-		case PRAGMA:
-		case IDENT:
-		case SCCS:
-		case EJECT:
-			break;
-		case -1:
-			warning("%s", file_red->i_file);
-			if (file_red != file)
-			    warning1(" (reading %s)", file->i_file);
-			warning1(", line %d: unknown directive == \"%s\"\n",
-				 filep->f_line, line);
-			break;
-		case -2:
-			warning("%s", file_red->i_file);
-			if (file_red != file)
-			    warning1(" (reading %s)", file->i_file);
-			warning1(", line %d: incomplete include == \"%s\"\n",
-				 filep->f_line, line);
-			break;
-		}
-	}
-	file->i_flags |= FINISHED;
-	debug(2,("finished with %s\n", file->i_file));
-	return(-1);
-}
deleted file mode 100644
--- a/config/mkdepend/pr.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/* $Xorg: pr.c,v 1.4 2001/02/09 02:03:16 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/makedepend/pr.c,v 1.5 2001/12/14 19:53:21 dawes Exp $ */
-
-#include "def.h"
-
-extern struct	inclist	inclist[ MAXFILES ],
-			*inclistp;
-extern char	*objprefix;
-extern char	*objsuffix;
-extern int	width;
-extern boolean	printed;
-extern boolean	verbose;
-extern boolean	show_where_not;
-
-void
-add_include(struct filepointer *filep, struct inclist *file, 
-	    struct inclist *file_red, char *include, int type,
-	    boolean failOK)
-{
-	register struct inclist	*newfile;
-	register struct filepointer	*content;
-
-	/*
-	 * First decide what the pathname of this include file really is.
-	 */
-	newfile = inc_path(file->i_file, include, type);
-	if (newfile == NULL) {
-		if (failOK)
-		    return;
-		if (file != file_red)
-			warning("%s (reading %s, line %d): ",
-				file_red->i_file, file->i_file, filep->f_line);
-		else
-			warning("%s, line %d: ", file->i_file, filep->f_line);
-		warning1("cannot find include file \"%s\"\n", include);
-		show_where_not = TRUE;
-		newfile = inc_path(file->i_file, include, type);
-		show_where_not = FALSE;
-	}
-
-	if (newfile) {
-		included_by(file, newfile);
-		if (!(newfile->i_flags & SEARCHED)) {
-			newfile->i_flags |= SEARCHED;
-			content = getfile(newfile->i_file);
-			find_includes(content, newfile, file_red, 0, failOK);
-			freefile(content);
-		}
-	}
-}
-
-static void
-pr(struct inclist *ip, char *file, char *base)
-{
-	static char	*lastfile;
-	static int	current_len;
-	register int	len, i;
-	char	buf[ BUFSIZ ];
-
-	printed = TRUE;
-	len = strlen(ip->i_file)+1;
-	if (current_len + len > width || file != lastfile) {
-		lastfile = file;
-		sprintf(buf, "\n%s%s%s: %s", objprefix, base, objsuffix,
-			ip->i_file);
-		len = current_len = strlen(buf);
-	}
-	else {
-		buf[0] = ' ';
-		strcpy(buf+1, ip->i_file);
-		current_len += len;
-	}
-	fwrite(buf, len, 1, stdout);
-
-	/*
-	 * If verbose is set, then print out what this file includes.
-	 */
-	if (! verbose || ip->i_list == NULL || ip->i_flags & NOTIFIED)
-		return;
-	ip->i_flags |= NOTIFIED;
-	lastfile = NULL;
-	printf("\n# %s includes:", ip->i_file);
-	for (i=0; i<ip->i_listlen; i++)
-		printf("\n#\t%s", ip->i_list[ i ]->i_incstring);
-}
-
-void
-recursive_pr_include(struct inclist *head, char *file, char *base)
-{
-	int	i;
-
-	if (head->i_flags & MARKED)
-		return;
-	head->i_flags |= MARKED;
-	if (head->i_file != file)
-		pr(head, file, base);
-	for (i=0; i<head->i_listlen; i++)
-		recursive_pr_include(head->i_list[ i ], file, base);
-}
--- a/config/rules.mk
+++ b/config/rules.mk
@@ -289,23 +289,16 @@ HOST_CCOBJS = $(addprefix host_,$(patsub
 HOST_CPPOBJS = $(addprefix host_,$(patsubst %.cpp,%.$(OBJ_SUFFIX),$(filter %.cpp,$(HOST_CPPSRCS))))
 HOST_CMOBJS = $(addprefix host_,$(HOST_CMSRCS:.m=.$(OBJ_SUFFIX)))
 HOST_CMMOBJS = $(addprefix host_,$(HOST_CMMSRCS:.mm=.$(OBJ_SUFFIX)))
 ifndef HOST_OBJS
 _HOST_OBJS = $(HOST_COBJS) $(HOST_CCOBJS) $(HOST_CPPOBJS) $(HOST_CMOBJS) $(HOST_CMMOBJS)
 HOST_OBJS = $(strip $(_HOST_OBJS))
 endif
 
-ifndef MOZ_AUTO_DEPS
-ifneq (,$(OBJS)$(XPIDLSRCS)$(SIMPLE_PROGRAMS))
-MDDEPFILES		= $(addprefix $(MDDEPDIR)/,$(OBJS:=.pp))
-MDDEPFILES		+= $(addprefix $(MDDEPDIR)/,$(XPIDLSRCS:.idl=.h.pp) $(XPIDLSRCS:.idl=.xpt.pp))
-endif
-endif
-
 ALL_TRASH = \
 	$(GARBAGE) $(TARGETS) $(OBJS) $(PROGOBJS) LOGS TAGS a.out \
 	$(filter-out $(ASFILES),$(OBJS:.$(OBJ_SUFFIX)=.s)) $(OBJS:.$(OBJ_SUFFIX)=.ii) \
 	$(OBJS:.$(OBJ_SUFFIX)=.i) $(OBJS:.$(OBJ_SUFFIX)=.i_o) \
 	$(HOST_PROGOBJS) $(HOST_OBJS) $(IMPORT_LIBRARY) $(DEF_FILE)\
 	$(EXE_DEF_FILE) so_locations _gen _stubs $(wildcard *.res) $(wildcard *.RES) \
 	$(wildcard *.pdb) $(CODFILE) $(MAPFILE) $(IMPORT_LIBRARY) \
 	$(SHARED_LIBRARY:$(DLL_SUFFIX)=.exp) $(wildcard *.ilk) \
@@ -912,53 +905,32 @@ endif	# WINNT && !GCC
 	chmod +x $@
 ifdef ENABLE_STRIP
 	$(STRIP) $@
 endif
 ifdef MOZ_POST_DSO_LIB_COMMAND
 	$(MOZ_POST_DSO_LIB_COMMAND) $@
 endif
 
-ifdef MOZ_AUTO_DEPS
-ifdef COMPILER_DEPEND
 ifeq ($(SOLARIS_SUNPRO_CC),1)
 _MDDEPFILE = $(MDDEPDIR)/$(@F).pp
 
 define MAKE_DEPS_AUTO_CC
 if test -d $(@D); then \
 	echo "Building deps for $< using Sun Studio cc"; \
 	$(CC) $(COMPILE_CFLAGS) -xM  $< >$(_MDDEPFILE) ; \
 fi
 endef
 define MAKE_DEPS_AUTO_CXX
 if test -d $(@D); then \
 	echo "Building deps for $< using Sun Studio CC"; \
 	$(CXX) $(COMPILE_CXXFLAGS) -xM $< >$(_MDDEPFILE) ; \
 fi
 endef
 endif # Sun Studio on Solaris
-else # COMPILER_DEPEND
-#
-# Generate dependencies on the fly
-#
-_MDDEPFILE = $(MDDEPDIR)/$(@F).pp
-
-define MAKE_DEPS_AUTO
-if test -d $(@D); then \
-	echo "Building deps for $<"; \
-	$(MKDEPEND) -o'.$(OBJ_SUFFIX)' -f- $(DEFINES) $(ACDEFINES) $(XULPPFLAGS) $(INCLUDES) $< 2>/dev/null | sed -e "s|^[^ ]*/||" > $(_MDDEPFILE) ; \
-fi
-endef
-
-MAKE_DEPS_AUTO_CC = $(MAKE_DEPS_AUTO)
-MAKE_DEPS_AUTO_CXX = $(MAKE_DEPS_AUTO)
-
-endif # COMPILER_DEPEND
-
-endif # MOZ_AUTO_DEPS
 
 $(OBJS) $(HOST_OBJS): $(GLOBAL_DEPS)
 
 # Rules for building native targets must come first because of the host_ prefix
 $(HOST_COBJS): host_%.$(OBJ_SUFFIX): %.c
 	$(REPORT_BUILD)
 	$(ELOG) $(HOST_CC) $(HOST_OUTOPTION)$@ -c $(HOST_CFLAGS) $(INCLUDES) $(NSPR_CFLAGS) $(_VPATH_SRCS)
 
@@ -1508,75 +1480,16 @@ endif
 libs::
 	$(RM) -r "$(DIST)/bin/extensions/$(INSTALL_EXTENSION_ID)"
 	$(NSINSTALL) -D "$(DIST)/bin/extensions/$(INSTALL_EXTENSION_ID)"
 	cd $(FINAL_TARGET) && tar $(TAR_CREATE_FLAGS) - . | (cd "../../bin/extensions/$(INSTALL_EXTENSION_ID)" && tar -xf -)
 
 endif
 
 #############################################################################
-# Dependency system
-#############################################################################
-ifdef COMPILER_DEPEND
-depend::
-	@echo "$(MAKE): No need to run depend target.\
-			Using compiler-based depend." 1>&2
-ifeq ($(GNU_CC)$(GNU_CXX),)
-# Non-GNU compilers
-	@echo "`echo '$(MAKE):'|sed 's/./ /g'`"\
-	'(Compiler-based depend was turned on by "--enable-md".)' 1>&2
-else
-# GNU compilers
-	@space="`echo '$(MAKE): '|sed 's/./ /g'`";\
-	echo "$$space"'Since you are using a GNU compiler,\
-		it is on by default.' 1>&2; \
-	echo "$$space"'To turn it off, pass --disable-md to configure.' 1>&2
-endif
-
-else # ! COMPILER_DEPEND
-
-ifndef MOZ_AUTO_DEPS
-
-define MAKE_DEPS_NOAUTO
-	$(MKDEPEND) -w1024 -o'.$(OBJ_SUFFIX)' -f- $(DEFINES) $(ACDEFINES) $(INCLUDES) $< 2>/dev/null | sed -e "s|^[^ ]*/||" > $@
-endef
-
-$(MDDEPDIR)/%.pp: %.c
-	$(REPORT_BUILD)
-	@$(MAKE_DEPS_NOAUTO)
-
-$(MDDEPDIR)/%.pp: %.cpp
-	$(REPORT_BUILD)
-	@$(MAKE_DEPS_NOAUTO)
-
-$(MDDEPDIR)/%.pp: %.s
-	$(REPORT_BUILD)
-	@$(MAKE_DEPS_NOAUTO)
-
-ifneq (,$(OBJS)$(XPIDLSRCS)$(SIMPLE_PROGRAMS))
-depend:: $(SUBMAKEFILES) $(MAKE_DIRS) $(MDDEPFILES)
-else
-depend:: $(SUBMAKEFILES)
-endif
-	$(LOOP_OVER_PARALLEL_DIRS)
-	$(LOOP_OVER_DIRS)
-	$(LOOP_OVER_TOOL_DIRS)
-
-dependclean:: $(SUBMAKEFILES)
-	$(RM) $(MDDEPFILES)
-	$(LOOP_OVER_PARALLEL_DIRS)
-	$(LOOP_OVER_DIRS)
-	$(LOOP_OVER_TOOL_DIRS)
-
-endif # MOZ_AUTO_DEPS
-
-endif # COMPILER_DEPEND
-
-
-#############################################################################
 # MDDEPDIR is the subdirectory where all the dependency files are placed.
 #   This uses a make rule (instead of a macro) to support parallel
 #   builds (-jN). If this were done in the LOOP_OVER_DIRS macro, two
 #   processes could simultaneously try to create the same directory.
 #
 #   We use $(CURDIR) in the rule's target to ensure that we don't find
 #   a dependency directory in the source tree via VPATH (perhaps from
 #   a previous build in the source tree) and thus neglect to create a
--- a/configure.in
+++ b/configure.in
@@ -823,17 +823,16 @@ MOZ_PATH_PROG(AUTOCONF, autoconf, :)
 MOZ_PATH_PROGS(UNZIP, unzip)
 if test -z "$UNZIP" -o "$UNZIP" = ":"; then
     AC_MSG_ERROR([unzip not found in \$PATH])
 fi
 MOZ_PATH_PROGS(ZIP, zip)
 if test -z "$ZIP" -o "$ZIP" = ":"; then
     AC_MSG_ERROR([zip not found in \$PATH])
 fi
-MOZ_PATH_PROG(MOZ_NATIVE_MAKEDEPEND, makedepend)
 MOZ_PATH_PROG(XARGS, xargs)
 if test -z "$XARGS" -o "$XARGS" = ":"; then
     AC_MSG_ERROR([xargs not found in \$PATH .])
 fi
 
 MOZ_PATH_PROG(RPMBUILD, rpmbuild, :)
 AC_SUBST(RPMBUILD)
 
@@ -1995,17 +1994,16 @@ ia64*-hpux*)
        MKCSHLIB='$(CC) $(CFLAGS) $(DSO_LDOPTS) -o $@'
        CXXFLAGS="$CXXFLAGS -Wc,-ansi_for_scope,on"
     else
        DSO_LDOPTS='-b -E'
        MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
        MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
     fi
     MOZ_FIX_LINK_PATHS=
-    MOZ_NATIVE_MAKEDEPEND=
     AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
     AC_DEFINE(_LARGEFILE64_SOURCE)
     ;;
 
 *-hpux*)
     DLL_SUFFIX=".sl"
     if test ! "$GNU_CC"; then
     	DSO_LDOPTS='-b -Wl,+s'
@@ -2084,17 +2082,16 @@ ia64*-hpux*)
 *-mingw*)
     DSO_CFLAGS=
     DSO_PIC_CFLAGS=
     DLL_SUFFIX=.dll
     RC=rc.exe
     MC=mc.exe
     # certain versions of cygwin's makedepend barf on the
     # #include <string> vs -I./dist/include/string issue so don't use it
-    MOZ_NATIVE_MAKEDEPEND=
     if test -n "$GNU_CC"; then
         CC="$CC -mwindows"
         CXX="$CXX -mwindows"
         CPP="$CPP -mwindows"
         CFLAGS="$CFLAGS -mms-bitfields"
         CXXFLAGS="$CXXFLAGS -mms-bitfields"
         DSO_LDOPTS='-shared'
         MKSHLIB='$(CXX) $(DSO_LDOPTS) -o $@'
@@ -2365,17 +2362,16 @@ ia64*-hpux*)
     if test "$ac_os2_declspec" != "yes"; then
         AC_MSG_ERROR([Compiler does not support __declspec(dllexport), install GCC-4.3.2 or newer])
     fi
     ;;
 
 *-solaris*)
     AC_DEFINE(SOLARIS)
     TARGET_NSPR_MDCPUCFG='\"md/_solaris.cfg\"'
-    MOZ_NATIVE_MAKEDEPEND=
     MOZ_FIX_LINK_PATHS=
     # $ORIGIN/.. is for shared libraries under components/ to locate shared
     # libraries one level up (e.g. libnspr4.so)
     if test "$SOLARIS_SUNPRO_CC"; then
        LDFLAGS="$LDFLAGS -z ignore -R '\$\$ORIGIN:\$\$ORIGIN/..' -z lazyload -z combreloc -z muldefs"
        LIBS="-lCrun -lCstd -lc $LIBS"
        AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
        CFLAGS="$CFLAGS -xlibmieee -xstrconst -xbuiltin=%all -D__FUNCTION__=__func__"
@@ -7626,74 +7622,39 @@ fi # COMPILE_ENVIRONMENT
 
 dnl ========================================================
 dnl =
 dnl = Build depencency options
 dnl =
 dnl ========================================================
 MOZ_ARG_HEADER(Build dependencies)
 
-dnl ========================================================
-dnl = Do not auto generate dependency info
-dnl ========================================================
-MOZ_AUTO_DEPS=1
-MOZ_ARG_DISABLE_BOOL(auto-deps,
-[  --disable-auto-deps     Do not automatically generate dependency info],
-    MOZ_AUTO_DEPS=,
-    MOZ_AUTO_DEPS=1)
-
-if test -n "$MOZ_AUTO_DEPS"; then
-dnl ========================================================
-dnl = Use mkdepend instead of $CC -MD for dependency generation
-dnl ========================================================
-_cpp_md_flag=
-MOZ_ARG_DISABLE_BOOL(md,
-[  --disable-md            Do not use compiler-based dependencies ],
-  [_cpp_md_flag=],
-  [_cpp_md_flag=1],
-  [dnl Default is to turn on -MD if using GNU-compatible compilers
-   if test "$GNU_CC" -a "$GNU_CXX"; then
-     _cpp_md_flag=1
-   fi
-  dnl Default is to use -xM if using Sun Studio on Solaris
-   if test "$SOLARIS_SUNPRO_CC"; then
-     _cpp_md_flag=1
-   fi])
-if test "$_cpp_md_flag"; then
-  COMPILER_DEPEND=1
+if test "$GNU_CC" -a "$GNU_CXX"; then
   _DEPEND_CFLAGS='$(filter-out %/.pp,-MD -MF $(MDDEPDIR)/$(@F).pp)'
-  dnl Sun Studio on Solaris use -xM instead of -MD, see config/rules.mk
-  if test "$SOLARIS_SUNPRO_CC"; then
-    _DEPEND_CFLAGS=
-  fi
+dnl Sun Studio on Solaris use -xM instead of -MD, see config/rules.mk
+elif test "$SOLARIS_SUNPRO_CC"; then
+  _DEPEND_CFLAGS=
 else
-  COMPILER_DEPEND=
   dnl Don't override this for MSVC
   if test -z "$_WIN32_MSVC"; then
     _USE_CPP_INCLUDE_FLAG=
     _DEFINES_CFLAGS='$(ACDEFINES) -D_MOZILLA_CONFIG_H_ -DMOZILLA_CLIENT'
     _DEFINES_CXXFLAGS='$(ACDEFINES) -D_MOZILLA_CONFIG_H_ -DMOZILLA_CLIENT'
   else
     echo '#include <stdio.h>' > dummy-hello.c
     changequote(,)
     CL_INCLUDES_PREFIX=`${CC} -showIncludes -c -Fonul dummy-hello.c 2>&1 | sed -ne 's/^\([^:]*:[^:]*:\).*stdio.h$/\1/p'`
     changequote([,])
     if test -z "$CL_INCLUDES_PREFIX"; then
         AC_MSG_ERROR([Cannot find cl -showIncludes prefix.])
     fi
     AC_SUBST(CL_INCLUDES_PREFIX)
     rm -f dummy-hello.c
-    COMPILER_DEPEND=1
   fi
 fi
-fi # MOZ_AUTO_DEPS
-MDDEPDIR='.deps'
-AC_SUBST(MOZ_AUTO_DEPS)
-AC_SUBST(COMPILER_DEPEND)
-AC_SUBST(MDDEPDIR)
 
 dnl ========================================================
 dnl =
 dnl = Static Build Options
 dnl =
 dnl ========================================================
 MOZ_ARG_HEADER(Static build options)
 
@@ -8422,17 +8383,16 @@ COMPILE_CFLAGS=`echo \
 	$_DEPEND_CFLAGS \
     $COMPILE_CFLAGS`
 
 COMPILE_CXXFLAGS=`echo \
     $_DEFINES_CXXFLAGS \
 	$_DEPEND_CFLAGS \
     $COMPILE_CXXFLAGS`
 
-AC_SUBST(MOZ_NATIVE_MAKEDEPEND)
 AC_SUBST(SYSTEM_LIBXUL)
 AC_SUBST(MOZ_NATIVE_JPEG)
 AC_SUBST(MOZ_NATIVE_PNG)
 AC_SUBST(MOZ_NATIVE_BZ2)
 
 AC_SUBST(MOZ_FLEXBOX)
 AC_SUBST(MOZ_JPEG_CFLAGS)
 AC_SUBST(MOZ_JPEG_LIBS)
--- a/js/src/config/Makefile.in
+++ b/js/src/config/Makefile.in
@@ -26,22 +26,16 @@ TARGETS		= $(HOST_PROGRAM) $(SIMPLE_PROG
 ifdef NSBUILDROOT
 override NSBUILDROOT :=
 endif
 
 ifdef GNU_CC
 MODULE_OPTIMIZE_FLAGS = -O3
 endif
 
-ifndef COMPILER_DEPEND
-ifndef MOZ_NATIVE_MAKEDEPEND
-DIRS		+= mkdepend
-endif
-endif
-
 include $(topsrcdir)/config/config.mk
 
 # Do not install util programs
 NO_INSTALL=1
 
 # Force wrap zlib system header if building js as a shared library.
 ifneq (,$(JS_SHARED_LIBRARY)$(MOZ_NATIVE_ZLIB))
 DEFINES += -DMOZ_NATIVE_ZLIB=1
@@ -65,15 +59,8 @@ export:: \
 	$(INSTALL) system_wrappers_js $(DIST)
 
 GARBAGE_DIRS += system_wrappers_js
 endif
 
 GARBAGE += $(srcdir)/*.pyc *.pyc
 
 FORCE:
-
-ifndef COMPILER_DEPEND
-ifdef MKDEPEND_DIR
-clean clobber realclean clobber_all::
-	cd $(MKDEPEND_DIR); $(MAKE) $@
-endif
-endif
--- a/js/src/config/config.mk
+++ b/js/src/config/config.mk
@@ -574,24 +574,16 @@ endif # MOZ_OPTIMIZE
 endif # OS_ARCH=Darwin
 
 ifdef MOZ_USING_CCACHE
 ifdef CLANG_CXX
 export CCACHE_CPP2=1
 endif
 endif
 
-ifdef MOZ_NATIVE_MAKEDEPEND
-MKDEPEND_DIR =
-MKDEPEND = $(MOZ_NATIVE_MAKEDEPEND)
-else
-MKDEPEND_DIR = $(CONFIG_TOOLS)/mkdepend
-MKDEPEND = $(MKDEPEND_DIR)/mkdepend$(BIN_SUFFIX)
-endif
-
 # Set link flags according to whether we want a console.
 ifdef MOZ_WINCONSOLE
 ifeq ($(MOZ_WINCONSOLE),1)
 ifeq ($(OS_ARCH),OS2)
 BIN_FLAGS	+= -Zlinker -PM:VIO
 endif
 ifeq ($(OS_ARCH),WINNT)
 ifdef GNU_CC
@@ -627,17 +619,17 @@ endif
 #
 # Include any personal overrides the user might think are needed.
 #
 -include $(topsrcdir)/$(MOZ_BUILD_APP)/app-config.mk
 -include $(MY_CONFIG)
 
 ######################################################################
 
-GARBAGE		+= $(DEPENDENCIES) $(MKDEPENDENCIES) $(MKDEPENDENCIES).bak core $(wildcard core.[0-9]*) $(wildcard *.err) $(wildcard *.pure) $(wildcard *_pure_*.o) Templates.DB
+GARBAGE		+= $(DEPENDENCIES) core $(wildcard core.[0-9]*) $(wildcard *.err) $(wildcard *.pure) $(wildcard *_pure_*.o) Templates.DB
 
 ifeq ($(OS_ARCH),Darwin)
 ifndef NSDISTMODE
 NSDISTMODE=absolute_symlink
 endif
 PWD := $(CURDIR)
 endif
 
@@ -751,16 +743,19 @@ ifdef TIERS
 DIRS += $(foreach tier,$(TIERS),$(tier_$(tier)_dirs))
 STATIC_DIRS += $(foreach tier,$(TIERS),$(tier_$(tier)_staticdirs))
 endif
 
 OPTIMIZE_JARS_CMD = $(PYTHON) $(call core_abspath,$(topsrcdir)/config/optimizejars.py)
 
 CREATE_PRECOMPLETE_CMD = $(PYTHON) $(call core_abspath,$(topsrcdir)/config/createprecomplete.py)
 
+# MDDEPDIR is the subdirectory where dependency files are stored
+MDDEPDIR := .deps
+
 EXPAND_LIBS_EXEC = $(PYTHON) $(topsrcdir)/config/pythonpath.py -I$(DEPTH)/config $(topsrcdir)/config/expandlibs_exec.py $(if $@,--depend $(MDDEPDIR)/$(@F).pp --target $@)
 EXPAND_LIBS_GEN = $(PYTHON) $(topsrcdir)/config/pythonpath.py -I$(DEPTH)/config $(topsrcdir)/config/expandlibs_gen.py $(if $@,--depend $(MDDEPDIR)/$(@F).pp)
 EXPAND_AR = $(EXPAND_LIBS_EXEC) --extract -- $(AR)
 EXPAND_CC = $(EXPAND_LIBS_EXEC) --uselist -- $(CC)
 EXPAND_CCC = $(EXPAND_LIBS_EXEC) --uselist -- $(CCC)
 EXPAND_LD = $(EXPAND_LIBS_EXEC) --uselist -- $(LD)
 EXPAND_MKSHLIB_ARGS = --uselist
 ifdef SYMBOL_ORDER
deleted file mode 100644
--- a/js/src/config/mkdepend/Makefile.in
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-DEPTH		= @DEPTH@
-topsrcdir	= @top_srcdir@
-srcdir		= @srcdir@
-VPATH		= @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-USE_STATIC_LIBS = 1
-
-MODULE		 = mkdepend
-HOST_PROGRAM	 = mkdepend$(BIN_SUFFIX)
-ifdef GNU_CC
-MODULE_OPTIMIZE_FLAGS = -O3
-else
-ifeq ($(OS_ARCH),SunOS)
-MODULE_OPTIMIZE_FLAGS = -fast
-endif
-endif
-
-ifeq ($(OS_ARCH),WINNT)
-ifndef GNU_CC
-MODULE_OPTIMIZE_FLAGS = -Ox
-endif
-endif
-
-HOST_CSRCS	= \
-		cppsetup.c \
-		ifparser.c \
-		include.c \
-		main.c \
-		parse.c \
-		pr.c \
-		$(NULL)
-
-include $(topsrcdir)/config/rules.mk
-
-HOST_CFLAGS	+= -DINCLUDEDIR=\"/usr/include\" -DOBJSUFFIX=\".$(OBJ_SUFFIX)\"
-
-ifdef GNU_CC
-_GCCDIR		= $(shell $(CC) -print-file-name=include)
-HOST_CFLAGS	+= -DPREINCDIR=\"$(_GCCDIR)\"
-endif
-
-export:: $(HOST_PROGRAM)
-
-$(HOST_OBJS): def.h ifparser.h imakemdep.h
deleted file mode 100644
--- a/js/src/config/mkdepend/cppsetup.c
+++ /dev/null
@@ -1,233 +0,0 @@
-/* $Xorg: cppsetup.c,v 1.5 2001/02/09 02:03:16 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/makedepend/cppsetup.c,v 3.11 2001/12/17 20:52:22 dawes Exp $ */
-
-#include "def.h"
-
-#ifdef	CPP
-/*
- * This file is strictly for the sake of cpy.y and yylex.c (if
- * you indeed have the source for cpp).
- */
-#define IB 1
-#define SB 2
-#define NB 4
-#define CB 8
-#define QB 16
-#define WB 32
-#define SALT '#'
-#if defined(pdp11) || defined(vax) || defined(ns16000) || defined(mc68000) || defined(ibm032)
-#define COFF 128
-#else
-#define COFF 0
-#endif
-/*
- * These variables used by cpy.y and yylex.c
- */
-extern char	*outp, *inp, *newp, *pend;
-extern char	*ptrtab;
-extern char	fastab[];
-extern char	slotab[];
-
-/*
- * cppsetup
- */
-struct filepointer	*currentfile;
-struct inclist		*currentinc;
-
-int
-cppsetup(char *line, struct filepointer *filep, struct inclist *inc)
-{
-	char *p, savec;
-	static boolean setupdone = FALSE;
-	boolean	value;
-
-	if (!setupdone) {
-		cpp_varsetup();
-		setupdone = TRUE;
-	}
-
-	currentfile = filep;
-	currentinc = inc;
-	inp = newp = line;
-	for (p=newp; *p; p++)
-		;
-
-	/*
-	 * put a newline back on the end, and set up pend, etc.
-	 */
-	*p++ = '\n';
-	savec = *p;
-	*p = '\0';
-	pend = p;
-
-	ptrtab = slotab+COFF;
-	*--inp = SALT; 
-	outp=inp; 
-	value = yyparse();
-	*p = savec;
-	return(value);
-}
-
-struct symtab **lookup(symbol)
-	char	*symbol;
-{
-	static struct symtab    *undefined;
-	struct symtab   **sp;
-
-	sp = isdefined(symbol, currentinc, NULL);
-	if (sp == NULL) {
-		sp = &undefined;
-		(*sp)->s_value = NULL;
-	}
-	return (sp);
-}
-
-pperror(tag, x0,x1,x2,x3,x4)
-	int	tag,x0,x1,x2,x3,x4;
-{
-	warning("\"%s\", line %d: ", currentinc->i_file, currentfile->f_line);
-	warning(x0,x1,x2,x3,x4);
-}
-
-
-yyerror(s)
-	register char	*s;
-{
-	fatalerr("Fatal error: %s\n", s);
-}
-#else /* not CPP */
-
-#include "ifparser.h"
-struct _parse_data {
-    struct filepointer *filep;
-    struct inclist *inc;
-    char *filename;
-    const char *line;
-};
-
-static const char *
-my_if_errors (IfParser *ip, const char *cp, const char *expecting)
-{
-    struct _parse_data *pd = (struct _parse_data *) ip->data;
-    int lineno = pd->filep->f_line;
-    char *filename = pd->filename;
-    char prefix[300];
-    int prefixlen;
-    int i;
-
-    sprintf (prefix, "\"%s\":%d", filename, lineno);
-    prefixlen = strlen(prefix);
-    fprintf (stderr, "%s:  %s", prefix, pd->line);
-    i = cp - pd->line;
-    if (i > 0 && pd->line[i-1] != '\n') {
-	putc ('\n', stderr);
-    }
-    for (i += prefixlen + 3; i > 0; i--) {
-	putc (' ', stderr);
-    }
-    fprintf (stderr, "^--- expecting %s\n", expecting);
-    return NULL;
-}
-
-
-#define MAXNAMELEN 256
-
-static struct symtab **
-lookup_variable (IfParser *ip, const char *var, int len)
-{
-    char tmpbuf[MAXNAMELEN + 1];
-    struct _parse_data *pd = (struct _parse_data *) ip->data;
-
-    if (len > MAXNAMELEN)
-	return 0;
-
-    strncpy (tmpbuf, var, len);
-    tmpbuf[len] = '\0';
-    return isdefined (tmpbuf, pd->inc, NULL);
-}
-
-
-static int
-my_eval_defined (IfParser *ip, const char *var, int len)
-{
-    if (lookup_variable (ip, var, len))
-	return 1;
-    else
-	return 0;
-}
-
-#define isvarfirstletter(ccc) (isalpha(ccc) || (ccc) == '_')
-
-static long
-my_eval_variable (IfParser *ip, const char *var, int len)
-{
-    long val;
-    struct symtab **s;
-
-    s = lookup_variable (ip, var, len);
-    if (!s)
-	return 0;
-    do {
-	var = (*s)->s_value;
-	if (!isvarfirstletter(*var) || !strcmp((*s)->s_name, var))
-	    break;
-	s = lookup_variable (ip, var, strlen(var));
-    } while (s);
-
-    var = ParseIfExpression(ip, var, &val);
-    if (var && *var) debug(4, ("extraneous: '%s'\n", var));
-    return val;
-}
-
-int
-cppsetup(char *filename,
-	 char *line,
-	 struct filepointer *filep,
-	 struct inclist *inc)
-{
-    IfParser ip;
-    struct _parse_data pd;
-    long val = 0;
-
-    pd.filep = filep;
-    pd.inc = inc;
-    pd.line = line;
-    pd.filename = filename;
-    ip.funcs.handle_error = my_if_errors;
-    ip.funcs.eval_defined = my_eval_defined;
-    ip.funcs.eval_variable = my_eval_variable;
-    ip.data = (char *) &pd;
-
-    (void) ParseIfExpression (&ip, line, &val);
-    if (val)
-	return IF;
-    else
-	return IFFALSE;
-}
-#endif /* CPP */
-
deleted file mode 100644
--- a/js/src/config/mkdepend/def.h
+++ /dev/null
@@ -1,184 +0,0 @@
-/* $Xorg: def.h,v 1.4 2001/02/09 02:03:16 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/makedepend/def.h,v 3.14 2003/01/17 17:09:49 tsi Exp $ */
-
-#ifndef NO_X11
-#include <X11/Xos.h>
-#include <X11/Xfuncproto.h>
-#endif
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-#if 0
-#ifndef X_NOT_POSIX
-#ifndef _POSIX_SOURCE
-#define _POSIX_SOURCE
-#endif
-#endif
-#endif
-#include <sys/types.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-
-#define MAXDEFINES	512
-#define MAXFILES	1024
-#define MAXINCFILES	256	/* "-include" files */
-#define MAXDIRS		1024
-#define SYMTABINC	10	/* must be > 1 for define() to work right */
-#define	TRUE		1
-#define	FALSE		0
-
-/* the following must match the directives table in main.c */
-#define	IF		0
-#define	IFDEF		1
-#define	IFNDEF		2
-#define	ELSE		3
-#define	ENDIF		4
-#define	DEFINE		5
-#define	UNDEF		6
-#define	INCLUDE		7
-#define	LINE		8
-#define	PRAGMA		9
-#define ERROR           10
-#define IDENT           11
-#define SCCS            12
-#define ELIF            13
-#define EJECT           14
-#define WARNING         15
-#define INCLUDENEXT     16
-#define IFFALSE         17     /* pseudo value --- never matched */
-#define ELIFFALSE       18     /* pseudo value --- never matched */
-#define INCLUDEDOT      19     /* pseudo value --- never matched */
-#define IFGUESSFALSE    20     /* pseudo value --- never matched */
-#define ELIFGUESSFALSE  21     /* pseudo value --- never matched */
-#define INCLUDENEXTDOT  22     /* pseudo value --- never matched */
-
-#ifdef DEBUG
-extern int	_debugmask;
-/*
- * debug levels are:
- * 
- *     0	show ifn*(def)*,endif
- *     1	trace defined/!defined
- *     2	show #include
- *     3	show #include SYMBOL
- *     4-6	unused
- */
-#define debug(level,arg) { if (_debugmask & (1 << level)) warning arg; }
-#else
-#define	debug(level,arg) /**/
-#endif /* DEBUG */
-
-typedef	unsigned char boolean;
-
-struct symtab {
-	char	*s_name;
-	char	*s_value;
-};
-
-/* possible i_flag */
-#define DEFCHECKED	(1<<0)	/* whether defines have been checked */
-#define NOTIFIED	(1<<1)	/* whether we have revealed includes */
-#define MARKED		(1<<2)	/* whether it's in the makefile */
-#define SEARCHED	(1<<3)	/* whether we have read this */
-#define FINISHED	(1<<4)	/* whether we are done reading this */
-#define INCLUDED_SYM	(1<<5)	/* whether #include SYMBOL was found
-				   Can't use i_list if TRUE */
-struct	inclist {
-	char		*i_incstring;	/* string from #include line */
-	char		*i_file;	/* path name of the include file */
-	struct inclist	**i_list;	/* list of files it itself includes */
-	int		i_listlen;	/* length of i_list */
-	struct symtab	**i_defs;	/* symbol table for this file and its
-					   children when merged */
-	int		i_ndefs;	/* current # defines */
-	boolean		*i_merged;      /* whether we have merged child
-					   defines */
-	unsigned char   i_flags;
-};
-
-struct filepointer {
-	char	*f_name;
-	char	*f_p;
-	char	*f_base;
-	char	*f_end;
-	long	f_len;
-	long	f_line;
-	long	cmdinc_count;
-	char	**cmdinc_list;
-	long	cmdinc_line;
-};
-
-#include <stdlib.h>
-#if defined(macII) && !defined(__STDC__)  /* stdlib.h fails to define these */
-char *malloc(), *realloc();
-#endif /* macII */
-
-char			*copy(char *str);
-int                     match(char *str, char **list);
-char			*base_name(char *file);
-char			*getnextline(struct filepointer *fp);
-struct symtab		**slookup(char *symbol, struct inclist *file);
-struct symtab		**isdefined(char *symbol, struct inclist *file,
-				    struct inclist **srcfile);
-struct symtab		**fdefined(char *symbol, struct inclist *file,
-				   struct inclist **srcfile);
-struct filepointer	*getfile(char *file);
-void                    included_by(struct inclist *ip, 
-				    struct inclist *newfile);
-struct inclist		*newinclude(char *newfile, char *incstring);
-void                    inc_clean (void);
-struct inclist		*inc_path(char *file, char *include, int type);
-
-void                    freefile(struct filepointer *fp);
-
-void                    define2(char *name, char *val, struct inclist *file);
-void                    define(char *def, struct inclist *file);
-void                    undefine(char *symbol, struct inclist *file);
-int                     find_includes(struct filepointer *filep, 
-				      struct inclist *file, 
-				      struct inclist *file_red, 
-				      int recursion, boolean failOK);
-
-void                    recursive_pr_include(struct inclist *head, 
-					     char *file, char *base);
-void                    add_include(struct filepointer *filep, 
-				    struct inclist *file, 
-				    struct inclist *file_red, 
-				    char *include, int type,
-				    boolean failOK);
-
-int                     cppsetup(char *filename,
-				 char *line,
-				 struct filepointer *filep,
-				 struct inclist *inc);
-
-
-extern void fatalerr(char *, ...);
-extern void warning(char *, ...);
-extern void warning1(char *, ...);
deleted file mode 100644
--- a/js/src/config/mkdepend/ifparser.c
+++ /dev/null
@@ -1,551 +0,0 @@
-/*
- * $Xorg: ifparser.c,v 1.3 2000/08/17 19:41:50 cpqbld Exp $
- *
- * 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.
- * 
- * Author:  Jim Fulton
- *          Network Computing Devices, Inc.
- * 
- * Simple if statement processor
- *
- * This module can be used to evaluate string representations of C language
- * if constructs.  It accepts the following grammar:
- * 
- *     EXPRESSION	:=	VALUE
- * 			 |	VALUE  BINOP	EXPRESSION
- *			 |	VALUE	'?'	EXPRESSION ':'	EXPRESSION
- * 
- *     VALUE		:=	'('  EXPRESSION  ')'
- * 			 |	'!'  VALUE
- * 			 |	'-'  VALUE
- * 			 |	'+'  VALUE
- *			 |	'~'  VALUE
- * 			 |	'defined'  '('  variable  ')'
- * 			 |	'defined'  variable
- *			 |	# variable '(' variable-list ')'
- * 			 |	variable
- * 			 |	number
- * 
- *     BINOP		:=	'*'	|  '/'	|  '%'
- * 			 |	'+'	|  '-'
- * 			 |	'<<'	|  '>>'
- * 			 |	'<'	|  '>'	|  '<='  |  '>='
- * 			 |	'=='	|  '!='
- * 			 |	'&'	|  '^'  |  '|'
- * 			 |	'&&'	|  '||'
- * 
- * The normal C order of precedence is supported.
- * 
- * 
- * External Entry Points:
- * 
- *     ParseIfExpression		parse a string for #if
- */
-/* $XFree86: xc/config/makedepend/ifparser.c,v 3.11 2002/09/23 01:48:08 tsi Exp $ */
-
-#include "ifparser.h"
-#include <ctype.h>
-#include <stdlib.h>
-#include <string.h>
-
-/****************************************************************************
-		   Internal Macros and Utilities for Parser
- ****************************************************************************/
-
-#define DO(val) if (!(val)) return NULL
-#define CALLFUNC(ggg,fff) (*((ggg)->funcs.fff))
-#define SKIPSPACE(ccc) while (isspace(*ccc)) ccc++
-#define isvarfirstletter(ccc) (isalpha(ccc) || (ccc) == '_')
-
-
-static const char *
-parse_variable (IfParser *g, const char *cp, const char **varp)
-{
-    SKIPSPACE (cp);
-
-    if (!isvarfirstletter (*cp))
-	return CALLFUNC(g, handle_error) (g, cp, "variable name");
-
-    *varp = cp;
-    /* EMPTY */
-    for (cp++; isalnum(*cp) || *cp == '_'; cp++) ;
-    return cp;
-}
-
-
-static const char *
-parse_number (IfParser *g, const char *cp, long *valp)
-{
-    long base = 10;
-    SKIPSPACE (cp);
-
-    if (!isdigit(*cp))
-	return CALLFUNC(g, handle_error) (g, cp, "number");
-
-    *valp = 0;
-
-    if (*cp == '0') {
-	cp++;
-	if ((*cp == 'x') || (*cp == 'X')) {
-	    base = 16;
-	    cp++;
-	} else {
-	    base = 8;
-	}
-    }
-
-    /* Ignore overflows and assume ASCII, what source is usually written in */
-    while (1) {
-	int increment = -1;
-	if (base == 8) {
-	    if ((*cp >= '0') && (*cp <= '7'))
-		increment = *cp++ - '0';
-	} else if (base == 16) {
-	    if ((*cp >= '0') && (*cp <= '9'))
-		increment = *cp++ - '0';
-	    else if ((*cp >= 'A') &&  (*cp <= 'F'))
-		increment = *cp++ - ('A' - 10);
-	    else if ((*cp >= 'a') && (*cp <= 'f'))
-		increment = *cp++ - ('a' - 10);
-	} else {	/* Decimal */
-	    if ((*cp >= '0') && (*cp <= '9'))
-		increment = *cp++ - '0';
-	}
-	if (increment < 0)
-	    break;
-	*valp = (*valp * base) + increment;
-    }
-
-    /* Skip trailing qualifiers */
-    while (*cp == 'U' || *cp == 'u' || *cp == 'L' || *cp == 'l') cp++;
-    return cp;
-}
-
-static const char *
-parse_character (IfParser *g, const char *cp, long *valp)
-{
-    char val;
-
-    SKIPSPACE (cp);
-    if (*cp == '\\')
-	switch (cp[1]) {
-	case 'n': val = '\n'; break;
-	case 't': val = '\t'; break;
-	case 'v': val = '\v'; break;
-	case 'b': val = '\b'; break;
-	case 'r': val = '\r'; break;
-	case 'f': val = '\f'; break;
-	case 'a': val = '\a'; break;
-	case '\\': val = '\\'; break;
-	case '?': val = '\?'; break;
-	case '\'': val = '\''; break;
-	case '\"': val = '\"'; break;
-	case 'x': val = (char) strtol (cp + 2, NULL, 16); break;
-	default: val = (char) strtol (cp + 1, NULL, 8); break;
-	}
-    else
-	val = *cp;
-    while (*cp != '\'') cp++;
-    *valp = (long) val;
-    return cp;
-}
-
-static const char *
-parse_value (IfParser *g, const char *cp, long *valp)
-{
-    const char *var, *varend;
-
-    *valp = 0;
-
-    SKIPSPACE (cp);
-    if (!*cp)
-	return cp;
-
-    switch (*cp) {
-      case '(':
-	DO (cp = ParseIfExpression (g, cp + 1, valp));
-	SKIPSPACE (cp);
-	if (*cp != ')') 
-	    return CALLFUNC(g, handle_error) (g, cp, ")");
-
-	return cp + 1;			/* skip the right paren */
-
-      case '!':
-	DO (cp = parse_value (g, cp + 1, valp));
-	*valp = !(*valp);
-	return cp;
-
-      case '-':
-	DO (cp = parse_value (g, cp + 1, valp));
-	*valp = -(*valp);
-	return cp;
-
-      case '+':
-	DO (cp = parse_value (g, cp + 1, valp));
-	return cp;
-
-      case '~':
-	DO (cp = parse_value (g, cp + 1, valp));
-	*valp = ~(*valp);
-	return cp;
-
-      case '#':
-	DO (cp = parse_variable (g, cp + 1, &var));
-	SKIPSPACE (cp);
-	if (*cp != '(')
-	    return CALLFUNC(g, handle_error) (g, cp, "(");
-	do {
-	    DO (cp = parse_variable (g, cp + 1, &var));
-	    SKIPSPACE (cp);
-	} while (*cp && *cp != ')');
-	if (*cp != ')')
-	    return CALLFUNC(g, handle_error) (g, cp, ")");
-	*valp = 1; /* XXX */
-	return cp + 1;
-
-      case '\'':
-	DO (cp = parse_character (g, cp + 1, valp));
-	if (*cp != '\'')
-	    return CALLFUNC(g, handle_error) (g, cp, "'");
-	return cp + 1;
-
-      case 'd':
-	if (strncmp (cp, "defined", 7) == 0 && !isalnum(cp[7])) {
-	    int paren = 0;
-	    int len;
-
-	    cp += 7;
-	    SKIPSPACE (cp);
-	    if (*cp == '(') {
-		paren = 1;
-		cp++;
-	    }
-	    DO (cp = parse_variable (g, cp, &var));
-	    len = cp - var;
-	    SKIPSPACE (cp);
-	    if (paren && *cp != ')')
-		return CALLFUNC(g, handle_error) (g, cp, ")");
-	    *valp = (*(g->funcs.eval_defined)) (g, var, len);
-	    return cp + paren;		/* skip the right paren */
-	}
-	/* fall out */
-    }
-
-    if (isdigit(*cp)) {
-	DO (cp = parse_number (g, cp, valp));
-    } else if (!isvarfirstletter(*cp))
-	return CALLFUNC(g, handle_error) (g, cp, "variable or number");
-    else {
-	DO (cp = parse_variable (g, cp, &var));
-	varend = cp;
-	SKIPSPACE(cp);
-	if (*cp != '(') {
-	    *valp = (*(g->funcs.eval_variable)) (g, var, varend - var);
-	} else {
-	    do {
-		long dummy;
-		DO (cp = ParseIfExpression (g, cp + 1, &dummy));
-		SKIPSPACE(cp);
-		if (*cp == ')')
-		    break;
-		if (*cp != ',')
-		    return CALLFUNC(g, handle_error) (g, cp, ",");
-	    } while (1);
-
-	    *valp = 1;	/* XXX */
-	    cp++;
-	}
-    }
-    
-    return cp;
-}
-
-
-
-static const char *
-parse_product (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_value (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '*':
-	DO (cp = parse_product (g, cp + 1, &rightval));
-	*valp = (*valp * rightval);
-	break;
-
-      case '/':
-	DO (cp = parse_product (g, cp + 1, &rightval));
-	if (rightval == 0)
-	  return CALLFUNC(g, handle_error) (g, cp, "0");
-	*valp = (*valp / rightval);
-	break;
-
-      case '%':
-	DO (cp = parse_product (g, cp + 1, &rightval));
-	*valp = (*valp % rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_sum (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_product (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '+':
-	DO (cp = parse_sum (g, cp + 1, &rightval));
-	*valp = (*valp + rightval);
-	break;
-
-      case '-':
-	DO (cp = parse_sum (g, cp + 1, &rightval));
-	*valp = (*valp - rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_shift (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_sum (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '<':
-	if (cp[1] == '<') {
-	    DO (cp = parse_shift (g, cp + 2, &rightval));
-	    *valp = (*valp << rightval);
-	}
-	break;
-
-      case '>':
-	if (cp[1] == '>') {
-	    DO (cp = parse_shift (g, cp + 2, &rightval));
-	    *valp = (*valp >> rightval);
-	}
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_inequality (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_shift (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '<':
-	if (cp[1] == '=') {
-	    DO (cp = parse_inequality (g, cp + 2, &rightval));
-	    *valp = (*valp <= rightval);
-	} else {
-	    DO (cp = parse_inequality (g, cp + 1, &rightval));
-	    *valp = (*valp < rightval);
-	}
-	break;
-
-      case '>':
-	if (cp[1] == '=') {
-	    DO (cp = parse_inequality (g, cp + 2, &rightval));
-	    *valp = (*valp >= rightval);
-	} else {
-	    DO (cp = parse_inequality (g, cp + 1, &rightval));
-	    *valp = (*valp > rightval);
-	}
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_equality (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_inequality (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '=':
-	if (cp[1] == '=')
-	    cp++;
-	DO (cp = parse_equality (g, cp + 1, &rightval));
-	*valp = (*valp == rightval);
-	break;
-
-      case '!':
-	if (cp[1] != '=')
-	    break;
-	DO (cp = parse_equality (g, cp + 2, &rightval));
-	*valp = (*valp != rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_band (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_equality (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '&':
-	if (cp[1] != '&') {
-	    DO (cp = parse_band (g, cp + 1, &rightval));
-	    *valp = (*valp & rightval);
-	}
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_bxor (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_band (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '^':
-	DO (cp = parse_bxor (g, cp + 1, &rightval));
-	*valp = (*valp ^ rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_bor (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_bxor (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '|':
-	if (cp[1] != '|') {
-	    DO (cp = parse_bor (g, cp + 1, &rightval));
-	    *valp = (*valp | rightval);
-	}
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_land (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_bor (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '&':
-	if (cp[1] != '&')
-	    return CALLFUNC(g, handle_error) (g, cp, "&&");
-	DO (cp = parse_land (g, cp + 2, &rightval));
-	*valp = (*valp && rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_lor (IfParser *g, const char *cp, long *valp)
-{
-    long rightval;
-
-    DO (cp = parse_land (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '|':
-	if (cp[1] != '|')
-	    return CALLFUNC(g, handle_error) (g, cp, "||");
-	DO (cp = parse_lor (g, cp + 2, &rightval));
-	*valp = (*valp || rightval);
-	break;
-    }
-    return cp;
-}
-
-
-static const char *
-parse_cond(IfParser *g, const char *cp, long *valp)
-{
-    long trueval, falseval;
-
-    DO (cp = parse_lor (g, cp, valp));
-    SKIPSPACE (cp);
-
-    switch (*cp) {
-      case '?':
-	DO (cp = parse_cond (g, cp + 1, &trueval));
-	SKIPSPACE (cp);
-	if (*cp != ':')
-	    return CALLFUNC(g, handle_error) (g, cp, ":");
-	DO (cp = parse_cond (g, cp + 1, &falseval));
-	*valp = (*valp ? trueval : falseval);
-	break;
-    }
-    return cp;
-}
-
-
-/****************************************************************************
-			     External Entry Points
- ****************************************************************************/
-
-const char *
-ParseIfExpression (IfParser *g, const char *cp, long *valp)
-{
-    return parse_cond (g, cp, valp);
-}
deleted file mode 100644
--- a/js/src/config/mkdepend/ifparser.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * $Xorg: ifparser.h,v 1.3 2000/08/17 19:41:51 cpqbld Exp $
- *
- * 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.
- * 
- * Author:  Jim Fulton
- *          Network Computing Devices, Inc.
- * 
- * Simple if statement processor
- *
- * This module can be used to evaluate string representations of C language
- * if constructs.  It accepts the following grammar:
- * 
- *     EXPRESSION	:=	VALUE
- * 			 |	VALUE  BINOP	EXPRESSION
- *			 |	VALUE	'?'	EXPRESSION ':'	EXPRESSION
- * 
- *     VALUE		:=	'('  EXPRESSION  ')'
- * 			 |	'!'  VALUE
- * 			 |	'-'  VALUE
- *			 |	'~'  VALUE
- * 			 |	'defined'  '('  variable  ')'
- * 			 |	variable
- * 			 |	number
- * 
- *     BINOP		:=	'*'	|  '/'	|  '%'
- * 			 |	'+'	|  '-'
- * 			 |	'<<'	|  '>>'
- * 			 |	'<'	|  '>'	|  '<='  |  '>='
- * 			 |	'=='	|  '!='
- * 			 |	'&'	|  '^'  |  '|'
- * 			 |	'&&'	|  '||'
- * 
- * The normal C order of precedence is supported.
- * 
- * 
- * External Entry Points:
- * 
- *     ParseIfExpression		parse a string for #if
- */
-
-/* $XFree86: xc/config/makedepend/ifparser.h,v 3.5 2001/07/25 15:04:40 dawes Exp $ */
-
-#include <stdio.h>
-
-typedef int Bool;
-#define False 0
-#define True 1
-
-typedef struct _if_parser {
-    struct {				/* functions */
-	const char *(*handle_error) (struct _if_parser *, const char *,
-				     const char *);
-	long (*eval_variable) (struct _if_parser *, const char *, int);
-	int (*eval_defined) (struct _if_parser *, const char *, int);
-    } funcs;
-    char *data;
-} IfParser;
-
-const char *ParseIfExpression (
-    IfParser *, 
-    const char *, 
-    long *
-);
-
deleted file mode 100644
--- a/js/src/config/mkdepend/imakemdep.h
+++ /dev/null
@@ -1,733 +0,0 @@
-
-/* $XConsortium: imakemdep.h,v 1.83 95/04/07 19:47:46 kaleb Exp $ */
-/* $XFree86: xc/config/imake/imakemdep.h,v 3.12 1995/07/08 10:22:17 dawes Exp $ */
-/*
-
-Copyright (c) 1993, 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
-CONNECTION 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 dealings
-in this Software without prior written authorization from the X Consortium.
-
-*/
-
-
-/* 
- * This file contains machine-dependent constants for the imake utility.
- * When porting imake, read each of the steps below and add in any necessary
- * definitions.  In general you should *not* edit ccimake.c or imake.c!
- */
-
-#ifdef CCIMAKE
-/*
- * Step 1:  imake_ccflags
- *     Define any special flags that will be needed to get imake.c to compile.
- *     These will be passed to the compile along with the contents of the
- *     make variable BOOTSTRAPCFLAGS.
- */
-#ifdef hpux
-#ifdef hp9000s800
-#define imake_ccflags "-DSYSV"
-#else
-#define imake_ccflags "-Wc,-Nd4000,-Ns3000 -DSYSV"
-#endif
-#endif
-
-#if defined(macII) || defined(_AUX_SOURCE)
-#define imake_ccflags "-DmacII -DSYSV"
-#endif
-
-#ifdef stellar
-#define imake_ccflags "-DSYSV"
-#endif
-
-#if defined(USL) || defined(Oki) || defined(NCR)
-#define imake_ccflags "-Xc -DSVR4"
-#endif
-
-#ifdef sony
-#if defined(SYSTYPE_SYSV) || defined(_SYSTYPE_SYSV)
-#define imake_ccflags "-DSVR4"
-#else
-#include <sys/param.h>
-#if NEWSOS < 41
-#define imake_ccflags "-Dbsd43 -DNOSTDHDRS"
-#else
-#if NEWSOS < 42
-#define imake_ccflags "-Dbsd43"
-#endif
-#endif
-#endif
-#endif
-
-#ifdef _CRAY
-#define imake_ccflags "-DSYSV -DUSG"
-#endif
-
-#if defined(_IBMR2) || defined(aix)
-#define imake_ccflags "-Daix -DSYSV"
-#endif
-
-#ifdef Mips
-#  if defined(SYSTYPE_BSD) || defined(BSD) || defined(BSD43)
-#    define imake_ccflags "-DBSD43"
-#  else 
-#    define imake_ccflags "-DSYSV"
-#  endif
-#endif 
-
-#ifdef is68k
-#define imake_ccflags "-Dluna -Duniosb"
-#endif
-
-#ifdef SYSV386
-# ifdef SVR4
-#  define imake_ccflags "-Xc -DSVR4"
-# else
-#  define imake_ccflags "-DSYSV"
-# endif
-#endif
-
-#ifdef SVR4
-# ifdef i386
-#  define imake_ccflags "-Xc -DSVR4"
-# endif
-#endif
-
-#ifdef SYSV
-# ifdef i386
-#  define imake_ccflags "-DSYSV"
-# endif
-#endif
-
-#ifdef __convex__
-#define imake_ccflags "-fn -tm c1"
-#endif
-
-#ifdef apollo
-#define imake_ccflags "-DX_NOT_POSIX"
-#endif
-
-#ifdef WIN32
-#define imake_ccflags "-nologo -batch -D__STDC__"
-#endif
-
-#ifdef __uxp__
-#define imake_ccflags "-DSVR4 -DANSICPP"
-#endif
-
-#ifdef __sxg__
-#define imake_ccflags "-DSYSV -DUSG -DNOSTDHDRS"
-#endif
-
-#ifdef sequent
-#define imake_ccflags "-DX_NOT_STDC_ENV -DX_NOT_POSIX"
-#endif
-
-#ifdef _SEQUENT_
-#define imake_ccflags "-DSYSV -DUSG"
-#endif
-
-#if defined(SX) || defined(PC_UX)
-#define imake_ccflags "-DSYSV"
-#endif
-
-#ifdef nec_ews_svr2
-#define imake_ccflags "-DUSG"
-#endif
-
-#if defined(nec_ews_svr4) || defined(_nec_ews_svr4) || defined(_nec_up) || defined(_nec_ft)
-#define imake_ccflags "-DSVR4"
-#endif
-
-#ifdef	MACH
-#define imake_ccflags "-DNOSTDHDRS"
-#endif
-
-/* this is for OS/2 under EMX. This won't work with DOS */
-#if defined(__EMX__) 
-#define imake_ccflags "-DBSD43"
-#endif
-
-#else /* not CCIMAKE */
-#ifndef MAKEDEPEND
-/*
- * Step 2:  dup2
- *     If your OS doesn't have a dup2() system call to duplicate one file
- *     descriptor onto another, define such a mechanism here (if you don't
- *     already fall under the existing category(ies).
- */
-#if defined(SYSV) && !defined(_CRAY) && !defined(Mips) && !defined(_SEQUENT_)
-#define	dup2(fd1,fd2)	((fd1 == fd2) ? fd1 : (close(fd2), \
-					       fcntl(fd1, F_DUPFD, fd2)))
-#endif
-
-
-/*
- * Step 3:  FIXUP_CPP_WHITESPACE
- *     If your cpp collapses tabs macro expansions into a single space and
- *     replaces escaped newlines with a space, define this symbol.  This will
- *     cause imake to attempt to patch up the generated Makefile by looking
- *     for lines that have colons in them (this is why the rules file escapes
- *     all colons).  One way to tell if you need this is to see whether or not
- *     your Makefiles have no tabs in them and lots of @@ strings.
- */
-#if defined(sun) || defined(SYSV) || defined(SVR4) || defined(hcx) || defined(WIN32) || (defined(AMOEBA) && defined(CROSS_COMPILE))
-#define FIXUP_CPP_WHITESPACE
-#endif
-#ifdef WIN32
-#define REMOVE_CPP_LEADSPACE
-#define INLINE_SYNTAX
-#define MAGIC_MAKE_VARS
-#endif
-#ifdef __minix_vmd
-#define FIXUP_CPP_WHITESPACE
-#endif
-
-/*
- * Step 4:  USE_CC_E, DEFAULT_CC, DEFAULT_CPP
- *     If you want to use cc -E instead of cpp, define USE_CC_E.
- *     If use cc -E but want a different compiler, define DEFAULT_CC.
- *     If the cpp you need is not in /lib/cpp, define DEFAULT_CPP.
- */
-#ifdef hpux
-#define USE_CC_E
-#endif
-#ifdef WIN32
-#define USE_CC_E
-#define DEFAULT_CC "cl"
-#endif
-#ifdef apollo
-#define DEFAULT_CPP "/usr/lib/cpp"
-#endif
-#if defined(_IBMR2) && !defined(DEFAULT_CPP)
-#define DEFAULT_CPP "/usr/lpp/X11/Xamples/util/cpp/cpp"
-#endif
-#if defined(sun) && defined(SVR4)
-#define DEFAULT_CPP "/usr/ccs/lib/cpp"
-#endif
-#ifdef __bsdi__
-#define DEFAULT_CPP "/usr/bin/cpp"
-#endif
-#ifdef __uxp__
-#define DEFAULT_CPP "/usr/ccs/lib/cpp"
-#endif
-#ifdef __sxg__
-#define DEFAULT_CPP "/usr/lib/cpp"
-#endif
-#ifdef _CRAY
-#define DEFAULT_CPP "/lib/pcpp"
-#endif
-#if defined(__386BSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__)
-#define DEFAULT_CPP "/usr/libexec/cpp"
-#endif
-#ifdef	MACH
-#define USE_CC_E
-#endif
-#ifdef __minix_vmd
-#define DEFAULT_CPP "/usr/lib/cpp"
-#endif
-#if defined(__EMX__)
-/* expects cpp in PATH */
-#define DEFAULT_CPP "cpp"
-#endif
-
-/*
- * Step 5:  cpp_argv
- *     The following table contains the flags that should be passed
- *     whenever a Makefile is being generated.  If your preprocessor 
- *     doesn't predefine any unique symbols, choose one and add it to the
- *     end of this table.  Then, do the following:
- * 
- *         a.  Use this symbol in Imake.tmpl when setting MacroFile.
- *         b.  Put this symbol in the definition of BootstrapCFlags in your
- *             <platform>.cf file.
- *         c.  When doing a make World, always add "BOOTSTRAPCFLAGS=-Dsymbol" 
- *             to the end of the command line.
- * 
- *     Note that you may define more than one symbol (useful for platforms 
- *     that support multiple operating systems).
- */
-
-#define	ARGUMENTS 50	/* number of arguments in various arrays */
-char *cpp_argv[ARGUMENTS] = {
-	"cc",		/* replaced by the actual program to exec */
-	"-I.",		/* add current directory to include path */
-#ifdef unix
-	"-Uunix",	/* remove unix symbol so that filename unix.c okay */
-#endif
-#if defined(__386BSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(MACH)
-# ifdef __i386__
-	"-D__i386__",
-# endif
-# ifdef __x86_64__
-	"-D__x86_64__",
-# endif
-# ifdef __GNUC__
-	"-traditional",
-# endif
-#endif
-#ifdef M4330
-	"-DM4330",	/* Tektronix */
-#endif
-#ifdef M4310
-	"-DM4310",	/* Tektronix */
-#endif
-#if defined(macII) || defined(_AUX_SOURCE)
-	"-DmacII",	/* Apple A/UX */
-#endif
-#ifdef USL
-	"-DUSL",	/* USL */
-#endif
-#ifdef sony
-	"-Dsony",	/* Sony */
-#if !defined(SYSTYPE_SYSV) && !defined(_SYSTYPE_SYSV) && NEWSOS < 42
-	"-Dbsd43",
-#endif
-#endif
-#ifdef _IBMR2
-	"-D_IBMR2",	/* IBM RS-6000 (we ensured that aix is defined above */
-#ifndef aix
-#define aix		/* allow BOOTSTRAPCFLAGS="-D_IBMR2" */
-#endif
-#endif /* _IBMR2 */
-#ifdef aix
-	"-Daix",	/* AIX instead of AOS */
-#ifndef ibm
-#define ibm		/* allow BOOTSTRAPCFLAGS="-Daix" */
-#endif
-#endif /* aix */
-#ifdef ibm
-	"-Dibm",	/* IBM PS/2 and RT under both AOS and AIX */
-#endif
-#ifdef luna
-	"-Dluna",	/* OMRON luna 68K and 88K */
-#ifdef luna1
-	"-Dluna1",
-#endif
-#ifdef luna88k		/* need not on UniOS-Mach Vers. 1.13 */
-	"-traditional", /* for some older version            */
-#endif			/* instead of "-DXCOMM=\\#"          */
-#ifdef uniosb
-	"-Duniosb",
-#endif
-#ifdef uniosu
-	"-Duniosu",
-#endif
-#endif /* luna */
-#ifdef _CRAY		/* Cray */
-	"-Ucray",
-#endif
-#ifdef Mips
-	"-DMips",	/* Define and use Mips for Mips Co. OS/mach. */
-# if defined(SYSTYPE_BSD) || defined(BSD) || defined(BSD43)
-	"-DBSD43",	/* Mips RISCOS supports two environments */
-# else
-	"-DSYSV",	/* System V environment is the default */
-# endif
-#endif /* Mips */
-#ifdef MOTOROLA
-	"-DMOTOROLA",    /* Motorola Delta Systems */
-# ifdef SYSV
-	"-DSYSV", 
-# endif
-# ifdef SVR4
-	"-DSVR4",
-# endif
-#endif /* MOTOROLA */
-#ifdef i386
-	"-Di386",
-# ifdef SVR4
-	"-DSVR4",
-# endif
-# ifdef SYSV
-	"-DSYSV",
-#  ifdef ISC
-	"-DISC",
-#   ifdef ISC40
-	"-DISC40",       /* ISC 4.0 */
-#   else
-#    ifdef ISC202
-	"-DISC202",      /* ISC 2.0.2 */
-#    else
-#     ifdef ISC30
-	"-DISC30",       /* ISC 3.0 */
-#     else
-	"-DISC22",       /* ISC 2.2.1 */
-#     endif
-#    endif
-#   endif
-#  endif
-#  ifdef SCO
-	"-DSCO",
-#   ifdef SCO324
-	"-DSCO324",
-#   endif
-#  endif
-# endif
-# ifdef ESIX
-	"-DESIX",
-# endif
-# ifdef ATT
-	"-DATT",
-# endif
-# ifdef DELL
-	"-DDELL",
-# endif
-#endif
-#ifdef SYSV386           /* System V/386 folks, obsolete */
-	"-Di386",
-# ifdef SVR4
-	"-DSVR4",
-# endif
-# ifdef ISC
-	"-DISC",
-#  ifdef ISC40
-	"-DISC40",       /* ISC 4.0 */
-#  else
-#   ifdef ISC202
-	"-DISC202",      /* ISC 2.0.2 */
-#   else
-#    ifdef ISC30
-	"-DISC30",       /* ISC 3.0 */
-#    else
-	"-DISC22",       /* ISC 2.2.1 */
-#    endif
-#   endif
-#  endif
-# endif
-# ifdef SCO
-	"-DSCO",
-#  ifdef SCO324
-	"-DSCO324",
-#  endif
-# endif
-# ifdef ESIX
-	"-DESIX",
-# endif
-# ifdef ATT
-	"-DATT",
-# endif
-# ifdef DELL
-	"-DDELL",
-# endif
-#endif
-#ifdef __osf__
-	"-D__osf__",
-# ifdef __mips__
-	"-D__mips__",
-# endif
-# ifdef __alpha
-	"-D__alpha",
-# endif
-# ifdef __i386__
-	"-D__i386__",
-# endif
-# ifdef __GNUC__
-	"-traditional",
-# endif
-#endif
-#ifdef Oki
-	"-DOki",
-#endif
-#ifdef sun
-#ifdef SVR4
-	"-DSVR4",
-#endif
-#endif
-#ifdef WIN32
-	"-DWIN32",
-	"-nologo",
-	"-batch",
-	"-D__STDC__",
-#endif
-#ifdef NCR
-	"-DNCR",	/* NCR */
-#endif
-#ifdef linux
-        "-traditional",
-        "-Dlinux",
-#endif
-#ifdef __uxp__
-	"-D__uxp__",
-#endif
-#ifdef __sxg__
-	"-D__sxg__",
-#endif
-#ifdef nec_ews_svr2
-	"-Dnec_ews_svr2",
-#endif
-#ifdef AMOEBA
-	"-DAMOEBA",
-# ifdef CROSS_COMPILE
-	"-DCROSS_COMPILE",
-#  ifdef CROSS_i80386
-	"-Di80386",
-#  endif
-#  ifdef CROSS_sparc
-	"-Dsparc",
-#  endif
-#  ifdef CROSS_mc68000
-	"-Dmc68000",
-#  endif
-# else
-#  ifdef i80386
-	"-Di80386",
-#  endif
-#  ifdef sparc
-	"-Dsparc",
-#  endif
-#  ifdef mc68000
-	"-Dmc68000",
-#  endif
-# endif
-#endif
-#ifdef __minix_vmd
-        "-Dminix",
-#endif
-
-#if defined(__EMX__)
-	"-traditional",
-	"-Demxos2",
-#endif
-
-};
-#else /* else MAKEDEPEND */
-/*
- * Step 6:  predefs
- *     If your compiler and/or preprocessor define any specific symbols, add
- *     them to the the following table.  The definition of struct symtab is
- *     in util/makedepend/def.h.
- */
-struct symtab	predefs[] = {
-#ifdef apollo
-	{"apollo", "1"},
-#endif
-#ifdef ibm032
-	{"ibm032", "1"},
-#endif
-#ifdef ibm
-	{"ibm", "1"},
-#endif
-#ifdef aix
-	{"aix", "1"},
-#endif
-#ifdef sun
-	{"sun", "1"},
-#endif
-#ifdef sun2
-	{"sun2", "1"},
-#endif
-#ifdef sun3
-	{"sun3", "1"},
-#endif
-#ifdef sun4
-	{"sun4", "1"},
-#endif
-#ifdef sparc
-	{"sparc", "1"},
-#endif
-#ifdef __sparc__
-	{"__sparc__", "1"},
-#endif
-#ifdef hpux
-	{"hpux", "1"},
-#endif
-#ifdef __hpux
-	{"__hpux", "1"},
-#endif
-#ifdef __hp9000s800
-	{"__hp9000s800", "1"},
-#endif
-#ifdef __hp9000s700
-	{"__hp9000s700", "1"},
-#endif
-#ifdef vax
-	{"vax", "1"},
-#endif
-#ifdef VMS
-	{"VMS", "1"},
-#endif
-#ifdef cray
-	{"cray", "1"},
-#endif
-#ifdef CRAY
-	{"CRAY", "1"},
-#endif
-#ifdef _CRAY
-	{"_CRAY", "1"},
-#endif
-#ifdef att
-	{"att", "1"},
-#endif
-#ifdef mips
-	{"mips", "1"},
-#endif
-#ifdef __mips__
-	{"__mips__", "1"},
-#endif
-#ifdef ultrix
-	{"ultrix", "1"},
-#endif
-#ifdef stellar
-	{"stellar", "1"},
-#endif
-#ifdef mc68000
-	{"mc68000", "1"},
-#endif
-#ifdef mc68020
-	{"mc68020", "1"},
-#endif
-#ifdef __GNUC__
-	{"__GNUC__", "1"},
-#endif
-#if __STDC__
-	{"__STDC__", "1"},
-#endif
-#ifdef __HIGHC__
-	{"__HIGHC__", "1"},
-#endif
-#ifdef CMU
-	{"CMU", "1"},
-#endif
-#ifdef luna
-	{"luna", "1"},
-#ifdef luna1
-	{"luna1", "1"},
-#endif
-#ifdef luna2
-	{"luna2", "1"},
-#endif
-#ifdef luna88k
-	{"luna88k", "1"},
-#endif
-#ifdef uniosb
-	{"uniosb", "1"},
-#endif
-#ifdef uniosu
-	{"uniosu", "1"},
-#endif
-#endif
-#ifdef ieeep754
-	{"ieeep754", "1"},
-#endif
-#ifdef is68k
-	{"is68k", "1"},
-#endif
-#ifdef m68k
-        {"m68k", "1"},
-#endif
-#ifdef m88k
-        {"m88k", "1"},
-#endif
-#ifdef __m88k__
-	{"__m88k__", "1"},
-#endif
-#ifdef bsd43
-	{"bsd43", "1"},
-#endif
-#ifdef hcx
-	{"hcx", "1"},
-#endif
-#ifdef sony
-	{"sony", "1"},
-#ifdef SYSTYPE_SYSV
-	{"SYSTYPE_SYSV", "1"},
-#endif
-#ifdef _SYSTYPE_SYSV
-	{"_SYSTYPE_SYSV", "1"},
-#endif
-#endif
-#ifdef __OSF__
-	{"__OSF__", "1"},
-#endif
-#ifdef __osf__
-	{"__osf__", "1"},
-#endif
-#ifdef __alpha
-	{"__alpha", "1"},
-#endif
-#ifdef __DECC
-	{"__DECC",  "1"},
-#endif
-#ifdef __decc
-	{"__decc",  "1"},
-#endif
-#ifdef __uxp__
-	{"__uxp__", "1"},
-#endif
-#ifdef __sxg__
-	{"__sxg__", "1"},
-#endif
-#ifdef _SEQUENT_
-	{"_SEQUENT_", "1"},
-	{"__STDC__", "1"},
-#endif
-#ifdef __bsdi__
-	{"__bsdi__", "1"},
-#endif
-#ifdef nec_ews_svr2
-	{"nec_ews_svr2", "1"},
-#endif
-#ifdef nec_ews_svr4
-	{"nec_ews_svr4", "1"},
-#endif
-#ifdef _nec_ews_svr4
-	{"_nec_ews_svr4", "1"},
-#endif
-#ifdef _nec_up
-	{"_nec_up", "1"},
-#endif
-#ifdef SX
-	{"SX", "1"},
-#endif
-#ifdef nec
-	{"nec", "1"},
-#endif
-#ifdef _nec_ft
-	{"_nec_ft", "1"},
-#endif
-#ifdef PC_UX
-	{"PC_UX", "1"},
-#endif
-#ifdef sgi
-	{"sgi", "1"},
-#endif
-#ifdef __sgi
-	{"__sgi", "1"},
-#endif
-#ifdef __FreeBSD__
-	{"__FreeBSD__", "1"},
-#endif
-#ifdef __NetBSD__
-	{"__NetBSD__", "1"},
-#endif
-#ifdef __OpenBSD__
-	{"__OpenBSD__", "1"},
-#endif
-#ifdef __EMX__
-	{"__EMX__", "1"},
-#endif
-	/* add any additional symbols before this line */
-	{NULL, NULL}
-};
-
-#endif /* MAKEDEPEND */
-#endif /* CCIMAKE */
deleted file mode 100644
--- a/js/src/config/mkdepend/include.c
+++ /dev/null
@@ -1,337 +0,0 @@
-/* $Xorg: include.c,v 1.4 2001/02/09 02:03:16 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/makedepend/include.c,v 3.7 2001/12/14 19:53:20 dawes Exp $ */
-
-
-#include "def.h"
-
-#ifdef _MSC_VER
-#include <windows.h>
-static int
-does_file_exist(char *file)
-{
-  WIN32_FILE_ATTRIBUTE_DATA data;
-  BOOL b = GetFileAttributesExA(file, GetFileExInfoStandard, &data);
-  if (!b)
-    return 0;
-  return (data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) == 0;
-}
-#else
-static int
-does_file_exist(char *file)
-{
-  struct stat sb;
-  return stat(file, &sb) == 0 && !S_ISDIR(sb.st_mode);
-}
-#endif
-
-extern struct	inclist	inclist[ MAXFILES ],
-			*inclistp, *inclistnext;
-extern char	*includedirs[ ],
-		**includedirsnext;
-extern char	*notdotdot[ ];
-extern boolean show_where_not;
-extern boolean warn_multiple;
-
-static boolean
-isdot(char *p)
-{
-	if(p && *p++ == '.' && *p++ == '\0')
-		return(TRUE);
-	return(FALSE);
-}
-
-static boolean
-isdotdot(char *p)
-{
-	if(p && *p++ == '.' && *p++ == '.' && *p++ == '\0')
-		return(TRUE);
-	return(FALSE);
-}
-
-static boolean
-issymbolic(char *dir, char *component)
-{
-#ifdef S_IFLNK
-	struct stat	st;
-	char	buf[ BUFSIZ ], **pp;
-
-	sprintf(buf, "%s%s%s", dir, *dir ? "/" : "", component);
-	for (pp=notdotdot; *pp; pp++)
-		if (strcmp(*pp, buf) == 0)
-			return (TRUE);
-	if (lstat(buf, &st) == 0
-	&& (st.st_mode & S_IFMT) == S_IFLNK) {
-		*pp++ = copy(buf);
-		if (pp >= &notdotdot[ MAXDIRS ])
-			fatalerr("out of .. dirs, increase MAXDIRS\n");
-		return(TRUE);
-	}
-#endif
-	return(FALSE);
-}
-
-/*
- * Occasionally, pathnames are created that look like .../x/../y
- * Any of the 'x/..' sequences within the name can be eliminated.
- * (but only if 'x' is not a symbolic link!!)
- */
-static void
-remove_dotdot(char *path)
-{
-	register char	*end, *from, *to, **cp;
-	char		*components[ MAXFILES ],
-			newpath[ BUFSIZ ];
-	boolean		component_copied;
-
-	/*
-	 * slice path up into components.
-	 */
-	to = newpath;
-	if (*path == '/')
-		*to++ = '/';
-	*to = '\0';
-	cp = components;
-	for (from=end=path; *end; end++)
-		if (*end == '/') {
-			while (*end == '/')
-				*end++ = '\0';
-			if (*from)
-				*cp++ = from;
-			from = end;
-		}
-	*cp++ = from;
-	*cp = NULL;
-
-	/*
-	 * Recursively remove all 'x/..' component pairs.
-	 */
-	cp = components;
-	while(*cp) {
-		if (!isdot(*cp) && !isdotdot(*cp) && isdotdot(*(cp+1))
-		    && !issymbolic(newpath, *cp))
-		{
-		    char **fp = cp + 2;
-		    char **tp = cp;
-
-		    do 
-			*tp++ = *fp; /* move all the pointers down */
-		    while (*fp++);
-		    if (cp != components)
-			cp--;	/* go back and check for nested ".." */
-		} else {
-		    cp++;
-		}
-	}
-	/*
-	 * Concatenate the remaining path elements.
-	 */
-	cp = components;
-	component_copied = FALSE;
-	while(*cp) {
-		if (component_copied)
-			*to++ = '/';
-		component_copied = TRUE;
-		for (from = *cp; *from; )
-			*to++ = *from++;
-		*to = '\0';
-		cp++;
-	}
-	*to++ = '\0';
-
-	/*
-	 * copy the reconstituted path back to our pointer.
-	 */
-	strcpy(path, newpath);
-}
-
-/*
- * Add an include file to the list of those included by 'file'.
- */
-struct inclist *
-newinclude(char *newfile, char *incstring)
-{
-	register struct inclist	*ip;
-
-	/*
-	 * First, put this file on the global list of include files.
-	 */
-	ip = inclistp++;
-	if (inclistp == inclist + MAXFILES - 1)
-		fatalerr("out of space: increase MAXFILES\n");
-	ip->i_file = copy(newfile);
-
-	if (incstring == NULL)
-		ip->i_incstring = ip->i_file;
-	else
-		ip->i_incstring = copy(incstring);
-
-	inclistnext = inclistp;
-	return(ip);
-}
-
-void
-included_by(struct inclist *ip, struct inclist *newfile)
-{
-	register int i;
-
-	if (ip == NULL)
-		return;
-	/*
-	 * Put this include file (newfile) on the list of files included
-	 * by 'file'.  If 'file' is NULL, then it is not an include
-	 * file itself (i.e. was probably mentioned on the command line).
-	 * If it is already on the list, don't stick it on again.
-	 */
-	if (ip->i_list == NULL) {
-		ip->i_list = (struct inclist **)
-			malloc(sizeof(struct inclist *) * ++ip->i_listlen);
-		ip->i_merged = (boolean *)
-		    malloc(sizeof(boolean) * ip->i_listlen);
-	} else {
-		for (i=0; i<ip->i_listlen; i++)
-			if (ip->i_list[ i ] == newfile) {
-			    i = strlen(newfile->i_file);
-			    if (!(ip->i_flags & INCLUDED_SYM) &&
-				!(i > 2 &&
-				  newfile->i_file[i-1] == 'c' &&
-				  newfile->i_file[i-2] == '.'))
-			    {
-				/* only bitch if ip has */
-				/* no #include SYMBOL lines  */
-				/* and is not a .c file */
-				if (warn_multiple)
-				{
-					warning("%s includes %s more than once!\n",
-						ip->i_file, newfile->i_file);
-					warning1("Already have\n");
-					for (i=0; i<ip->i_listlen; i++)
-						warning1("\t%s\n", ip->i_list[i]->i_file);
-				}
-			    }
-			    return;
-			}
-		ip->i_list = (struct inclist **) realloc(ip->i_list,
-			sizeof(struct inclist *) * ++ip->i_listlen);
-		ip->i_merged = (boolean *)
-		    realloc(ip->i_merged, sizeof(boolean) * ip->i_listlen);
-	}
-	ip->i_list[ ip->i_listlen-1 ] = newfile;
-	ip->i_merged[ ip->i_listlen-1 ] = FALSE;
-}
-
-void
-inc_clean (void)
-{
-	register struct inclist *ip;
-
-	for (ip = inclist; ip < inclistp; ip++) {
-		ip->i_flags &= ~MARKED;
-	}
-}
-
-struct inclist *
-inc_path(char *file, char *include, int type)
-{
-	static char		path[ BUFSIZ ];
-	register char		**pp, *p;
-	register struct inclist	*ip;
-
-	/*
-	 * Check all previously found include files for a path that
-	 * has already been expanded.
-	 */
-	if ((type == INCLUDE) || (type == INCLUDEDOT))
-		inclistnext = inclist;
-	ip = inclistnext;
-
-	for (; ip->i_file; ip++) {
-		if ((strcmp(ip->i_incstring, include) == 0) &&
-		    !(ip->i_flags & INCLUDED_SYM)) {
-			inclistnext = ip + 1;
-			return ip;
-		}
-	}
-
-	if (inclistnext == inclist) {
-		/*
-		 * If the path was surrounded by "" or is an absolute path,
-		 * then check the exact path provided.
-		 */
-		if ((type == INCLUDEDOT) ||
-		    (type == INCLUDENEXTDOT) ||
-		    (*include == '/')) {
-			if (does_file_exist(include))
-				return newinclude(include, include);
-			if (show_where_not)
-				warning1("\tnot in %s\n", include);
-		}
-
-		/*
-		 * If the path was surrounded by "" see if this include file is
-		 * in the directory of the file being parsed.
-		 */
-		if ((type == INCLUDEDOT) || (type == INCLUDENEXTDOT)) {
-			for (p=file+strlen(file); p>file; p--)
-				if (*p == '/')
-					break;
-			if (p == file) {
-				strcpy(path, include);
-			} else {
-				strncpy(path, file, (p-file) + 1);
-				path[ (p-file) + 1 ] = '\0';
-				strcpy(path + (p-file) + 1, include);
-			}
-			remove_dotdot(path);
-			if (does_file_exist(path))
-				return newinclude(path, include);
-			if (show_where_not)
-				warning1("\tnot in %s\n", path);
-		}
-	}
-
-	/*
-	 * Check the include directories specified.  Standard include dirs
-	 * should be at the end.
-	 */
-	if ((type == INCLUDE) || (type == INCLUDEDOT))
-		includedirsnext = includedirs;
-	pp = includedirsnext;
-
-	for (; *pp; pp++) {
-		sprintf(path, "%s/%s", *pp, include);
-		remove_dotdot(path);
-		if (does_file_exist(path)) {
-			includedirsnext = pp + 1;
-			return newinclude(path, include);
-		}
-		if (show_where_not)
-			warning1("\tnot in %s\n", path);
-	}
-
-	return NULL;
-}
deleted file mode 100644
--- a/js/src/config/mkdepend/main.c
+++ /dev/null
@@ -1,860 +0,0 @@
-/* $Xorg: main.c,v 1.5 2001/02/09 02:03:16 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
-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/makedepend/main.c,v 3.32 2003/03/26 20:43:48 tsi Exp $ */
-
-#include "def.h"
-#ifdef hpux
-#define sigvec sigvector
-#endif /* hpux */
-
-#ifdef X_POSIX_C_SOURCE
-#define _POSIX_C_SOURCE X_POSIX_C_SOURCE
-#include <signal.h>
-#undef _POSIX_C_SOURCE
-#else
-#if defined(X_NOT_POSIX) || defined(_POSIX_SOURCE)
-#include <signal.h>
-#else
-#define _POSIX_SOURCE
-#include <signal.h>
-#undef _POSIX_SOURCE
-#endif
-#endif
-
-#include <stdarg.h>
-
-#ifdef MINIX
-#define USE_CHMOD	1
-#endif
-
-#ifdef DEBUG
-int	_debugmask;
-#endif
-
-/* #define DEBUG_DUMP */
-#ifdef DEBUG_DUMP
-#define DBG_PRINT(file, fmt, args)   fprintf(file, fmt, args)
-#else
-#define DBG_PRINT(file, fmt, args)   /* empty */
-#endif
-
-#define DASH_INC_PRE    "#include \""
-#define DASH_INC_POST   "\""
-
-char *ProgramName;
-
-char	*directives[] = {
-	"if",
-	"ifdef",
-	"ifndef",
-	"else",
-	"endif",
-	"define",
-	"undef",
-	"include",
-	"line",
-	"pragma",
-	"error",
-	"ident",
-	"sccs",
-	"elif",
-	"eject",
-	"warning",
-	"include_next",
-	NULL
-};
-
-#define MAKEDEPEND
-#include "imakemdep.h"	/* from config sources */
-#undef MAKEDEPEND
-
-struct	inclist inclist[ MAXFILES ],
-		*inclistp = inclist,
-		*inclistnext = inclist,
-		maininclist;
-
-static char	*filelist[ MAXFILES ];
-char		*includedirs[ MAXDIRS + 1 ],
-		**includedirsnext = includedirs;
-char		*notdotdot[ MAXDIRS ];
-static int	cmdinc_count = 0;
-static char	*cmdinc_list[ 2 * MAXINCFILES ];
-char		*objprefix = "";
-char		*objsuffix = OBJSUFFIX;
-static char	*startat = "# DO NOT DELETE";
-int		width = 78;
-static boolean	append = FALSE;
-boolean		printed = FALSE;
-boolean		verbose = FALSE;
-boolean		show_where_not = FALSE;
-/* Warn on multiple includes of same file */
-boolean 	warn_multiple = FALSE;
-
-static void setfile_cmdinc(struct filepointer *filep, long count, char **list);
-static void redirect(char *line, char *makefile);
-
-static
-#ifdef SIGNALRETURNSINT
-int
-#else
-void
-#endif
-catch (int sig)
-{
-	fflush (stdout);
-	fatalerr ("got signal %d\n", sig);
-}
-
-#if defined(USG) || (defined(i386) && defined(SYSV)) || defined(WIN32) || defined(__UNIXOS2__) || defined(Lynx_22) || defined(__CYGWIN__)
-#define USGISH
-#endif
-
-#ifndef USGISH
-#ifdef X_NOT_POSIX
-#define sigaction sigvec
-#define sa_handler sv_handler
-#define sa_mask sv_mask
-#define sa_flags sv_flags
-#endif
-struct sigaction sig_act;
-#endif /* USGISH */
-
-int
-main(int argc, char *argv[])
-{
-	char	**fp = filelist;
-	char	**incp = includedirs;
-	char	*p;
-	struct inclist	*ip;
-	char	*makefile = NULL;
-	struct filepointer	*filecontent;
-	struct symtab *psymp = predefs;
-	char *endmarker = NULL;
-	char *defincdir = NULL;
-	char **undeflist = NULL;
-	int numundefs = 0, i;
-	register char offset;
-
-	ProgramName = argv[0];
-
-	while (psymp->s_name)
-	{
-	    define2(psymp->s_name, psymp->s_value, &maininclist);
-	    psymp++;
-	}
-	if (argc == 2 && argv[1][0] == '@') {
-	    struct stat ast;
-	    int afd;
-	    char *args;
-	    char **nargv;
-	    int nargc;
-	    char quotechar = '\0';
-
-	    nargc = 1;
-	    if ((afd = open(argv[1]+1, O_RDONLY)) < 0)
-		fatalerr("cannot open \"%s\"\n", argv[1]+1);
-	    fstat(afd, &ast);
-	    args = (char *)malloc(ast.st_size + 1);
-	    if ((ast.st_size = read(afd, args, ast.st_size)) < 0)
-		fatalerr("failed to read %s\n", argv[1]+1);
-	    args[ast.st_size] = '\0';
-	    close(afd);
-	    for (p = args; *p; p++) {
-		if (quotechar) {
-		    if (quotechar == '\\' ||
-			(*p == quotechar && p[-1] != '\\'))
-			quotechar = '\0';
-		    continue;
-		}
-		switch (*p) {
-		case '\\':
-		case '"':
-		case '\'':
-		    quotechar = *p;
-		    break;
-		case ' ':
-		case '\n':
-		    *p = '\0';
-		    if (p > args && p[-1])
-			nargc++;
-		    break;
-		}
-	    }
-	    if (p[-1])
-		nargc++;
-	    nargv = (char **)malloc(nargc * sizeof(char *));
-	    nargv[0] = argv[0];
-	    argc = 1;
-	    for (p = args; argc < nargc; p += strlen(p) + 1)
-		if (*p) nargv[argc++] = p;
-	    argv = nargv;
-	}
-	for(argc--, argv++; argc; argc--, argv++) {
-	    	/* if looking for endmarker then check before parsing */
-		if (endmarker && strcmp (endmarker, *argv) == 0) {
-		    endmarker = NULL;
-		    continue;
-		}
-		if (**argv != '-') {
-			/* treat +thing as an option for C++ */
-			if (endmarker && **argv == '+')
-				continue;
-			*fp++ = argv[0];
-			continue;
-		}
-		switch(argv[0][1]) {
-		case '-':
-			endmarker = &argv[0][2];
-			if (endmarker[0] == '\0') endmarker = "--";
-			break;
-		case 'D':
-			offset = 2;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				offset = 0;
-			}
-			/* offset +1 here since first def letter
-			 * cannot be `=`
-			 */
-			for (p = argv[0] + offset + 1; *p; p++)
-				if (*p == '=') {
-					*p = ' ';
-					break;
-				}
-			define(argv[0] + offset, &maininclist);
-			break;
-		case 'I':
-			if (incp >= includedirs + MAXDIRS)
-			    fatalerr("Too many -I flags.\n");
-			*incp++ = argv[0]+2;
-			if (**(incp-1) == '\0') {
-				*(incp-1) = *(++argv);
-				argc--;
-			}
-			break;
-		case 'U':
-			/* Undef's override all -D's so save them up */
-			numundefs++;
-			if (numundefs == 1)
-			    undeflist = malloc(sizeof(char *));
-			else
-			    undeflist = realloc(undeflist,
-						numundefs * sizeof(char *));
-			offset = 2;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				offset = 0;
-			}
-			undeflist[numundefs - 1] = argv[0] + offset;
-			break;
-		case 'Y':
-			defincdir = argv[0]+2;
-			break;
-		/* do not use if endmarker processing */
-		case 'a':
-			if (endmarker) break;
-			append = TRUE;
-			break;
-		case 'w':
-			if (endmarker) break;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				width = atoi(argv[0]);
-			} else
-				width = atoi(argv[0]+2);
-			break;
-		case 'o':
-			if (endmarker) break;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				objsuffix = argv[0];
-			} else
-				objsuffix = argv[0]+2;
-			break;
-		case 'p':
-			if (endmarker) break;
-			if (argv[0][2] == '\0') {
-				argv++;
-				argc--;
-				objprefix = argv[0];
-			} else
-				objprefix = argv[0]+2;
-			break;
-		case 'v':
-			if (endmarker) break;
-			verbose = TRUE;
-#ifdef DEBUG
-			if (argv[0][2])
-				_debugmask = atoi(argv[0]+2);
-#endif
-			break;
-		case 's':
-			if (endmarker) break;
-			startat = argv[0]+2;
-			if (*startat == '\0') {
-				startat = *(++argv);
-				argc--;
-			}
-			if (*startat != '#')
-				fatalerr("-s flag's value should start %s\n",
-					"with '#'.");
-			break;
-		case 'f':
-			if (endmarker) break;
-			makefile = argv[0]+2;
-			if (*makefile == '\0') {
-				makefile = *(++argv);
-				argc--;
-			}
-			break;
-
-		case 'm':
-			warn_multiple = TRUE;
-			break;
-			
-		/* Ignore -O, -g so we can just pass ${CFLAGS} to
-		   makedepend
-		 */
-		case 'O':
-		case 'g':
-			break;
-		case 'i':
-			if (strcmp(&argv[0][1],"include") == 0) {
-				char *buf;
-				if (argc<2)
-					fatalerr("option -include is a "
-						 "missing its parameter\n");
-				if (cmdinc_count >= MAXINCFILES)
-					fatalerr("Too many -include flags.\n");
-				argc--;
-				argv++;
-				buf = malloc(strlen(DASH_INC_PRE) +
-					     strlen(argv[0]) +
-					     strlen(DASH_INC_POST) + 1);
-                		if(!buf)
-					fatalerr("out of memory at "
-						 "-include string\n");
-				cmdinc_list[2 * cmdinc_count + 0] = argv[0];
-				cmdinc_list[2 * cmdinc_count + 1] = buf;
-				cmdinc_count++;
-				break;
-			}
-			/* intentional fall through */
-		default:
-			if (endmarker) break;
-	/*		fatalerr("unknown opt = %s\n", argv[0]); */
-			warning("ignoring option %s\n", argv[0]);
-		}
-	}
-	/* Now do the undefs from the command line */
-	for (i = 0; i < numundefs; i++)
-	    undefine(undeflist[i], &maininclist);
-	if (numundefs > 0)
-	    free(undeflist);
-
-	if (!defincdir) {
-#ifdef PREINCDIR
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = PREINCDIR;
-#endif
-#ifdef __UNIXOS2__
-	    {
-		char *emxinc = getenv("C_INCLUDE_PATH");
-		/* can have more than one component */
-		if (emxinc) {
-		    char *beg, *end;
-		    beg= (char*)strdup(emxinc);
-		    for (;;) {
-			end = (char*)strchr(beg,';');
-			if (end) *end = 0;
-		    	if (incp >= includedirs + MAXDIRS)
-				fatalerr("Too many include dirs\n");
-			*incp++ = beg;
-			if (!end) break;
-			beg = end+1;
-		    }
-		}
-	    }
-#else /* !__UNIXOS2__, does not use INCLUDEDIR at all */
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = INCLUDEDIR;
-#endif
-
-#ifdef EXTRAINCDIR
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = EXTRAINCDIR;
-#endif
-
-#ifdef POSTINCDIR
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = POSTINCDIR;
-#endif
-	} else if (*defincdir) {
-	    if (incp >= includedirs + MAXDIRS)
-		fatalerr("Too many -I flags.\n");
-	    *incp++ = defincdir;
-	}
-
-	redirect(startat, makefile);
-
-	/*
-	 * catch signals.
-	 */
-#ifdef USGISH
-/*  should really reset SIGINT to SIG_IGN if it was.  */
-#ifdef SIGHUP
-	signal (SIGHUP, catch);
-#endif
-	signal (SIGINT, catch);
-#ifdef SIGQUIT
-	signal (SIGQUIT, catch);
-#endif
-	signal (SIGILL, catch);
-#ifdef SIGBUS
-	signal (SIGBUS, catch);
-#endif
-	signal (SIGSEGV, catch);
-#ifdef SIGSYS
-	signal (SIGSYS, catch);
-#endif
-#else
-	sig_act.sa_handler = catch;
-#if defined(_POSIX_SOURCE) || !defined(X_NOT_POSIX)
-	sigemptyset(&sig_act.sa_mask);
-	sigaddset(&sig_act.sa_mask, SIGINT);
-	sigaddset(&sig_act.sa_mask, SIGQUIT);
-#ifdef SIGBUS
-	sigaddset(&sig_act.sa_mask, SIGBUS);
-#endif
-	sigaddset(&sig_act.sa_mask, SIGILL);
-	sigaddset(&sig_act.sa_mask, SIGSEGV);
-	sigaddset(&sig_act.sa_mask, SIGHUP);
-	sigaddset(&sig_act.sa_mask, SIGPIPE);
-#ifdef SIGSYS
-	sigaddset(&sig_act.sa_mask, SIGSYS);
-#endif
-#else
-	sig_act.sa_mask = ((1<<(SIGINT -1))
-			   |(1<<(SIGQUIT-1))
-#ifdef SIGBUS
-			   |(1<<(SIGBUS-1))
-#endif
-			   |(1<<(SIGILL-1))
-			   |(1<<(SIGSEGV-1))
-			   |(1<<(SIGHUP-1))
-			   |(1<<(SIGPIPE-1))
-#ifdef SIGSYS
-			   |(1<<(SIGSYS-1))
-#endif
-			   );
-#endif /* _POSIX_SOURCE */
-	sig_act.sa_flags = 0;
-	sigaction(SIGHUP, &sig_act, (struct sigaction *)0);
-	sigaction(SIGINT, &sig_act, (struct sigaction *)0);
-	sigaction(SIGQUIT, &sig_act, (struct sigaction *)0);
-	sigaction(SIGILL, &sig_act, (struct sigaction *)0);
-#ifdef SIGBUS
-	sigaction(SIGBUS, &sig_act, (struct sigaction *)0);
-#endif
-	sigaction(SIGSEGV, &sig_act, (struct sigaction *)0);
-#ifdef SIGSYS
-	sigaction(SIGSYS, &sig_act, (struct sigaction *)0);
-#endif
-#endif /* USGISH */
-
-	/*
-	 * now peruse through the list of files.
-	 */
-	for(fp=filelist; *fp; fp++) {
-		DBG_PRINT(stderr,"file: %s\n",*fp);
-		filecontent = getfile(*fp);
-		setfile_cmdinc(filecontent, cmdinc_count, cmdinc_list);
-		ip = newinclude(*fp, (char *)NULL);
-
-		find_includes(filecontent, ip, ip, 0, FALSE);
-		freefile(filecontent);
-		recursive_pr_include(ip, ip->i_file, base_name(*fp));
-		inc_clean();
-	}
-	if (printed)
-		printf("\n");
-	return 0;
-}
-
-#ifdef __UNIXOS2__
-/*
- * eliminate \r chars from file
- */
-static int 
-elim_cr(char *buf, int sz)
-{
-	int i,wp;
-	for (i= wp = 0; i<sz; i++) {
-		if (buf[i] != '\r')
-			buf[wp++] = buf[i];
-	}
-	return wp;
-}
-#endif
-
-struct filepointer *
-getfile(char *file)
-{
-	int	fd;
-	struct filepointer	*content;
-	struct stat	st;
-
-	content = (struct filepointer *)malloc(sizeof(struct filepointer));
-	content->f_name = file;
-	if ((fd = open(file, O_RDONLY)) < 0) {
-		warning("cannot open \"%s\"\n", file);
-		content->f_p = content->f_base = content->f_end = (char *)malloc(1);
-		*content->f_p = '\0';
-		return(content);
-	}
-	fstat(fd, &st);
-	content->f_base = (char *)malloc(st.st_size+1);
-	if (content->f_base == NULL)
-		fatalerr("cannot allocate mem\n");
-	if ((st.st_size = read(fd, content->f_base, st.st_size)) < 0)
-		fatalerr("failed to read %s\n", file);
-#ifdef __UNIXOS2__
-	st.st_size = elim_cr(content->f_base,st.st_size);
-#endif
-	close(fd);
-	content->f_len = st.st_size+1;
-	content->f_p = content->f_base;
-	content->f_end = content->f_base + st.st_size;
-	*content->f_end = '\0';
-	content->f_line = 0;
-	content->cmdinc_count = 0;
-	content->cmdinc_list = NULL;
-	content->cmdinc_line = 0;
-	return(content);
-}
-
-void
-setfile_cmdinc(struct filepointer* filep, long count, char** list)
-{
-	filep->cmdinc_count = count;
-	filep->cmdinc_list = list;
-	filep->cmdinc_line = 0;
-}
-
-void
-freefile(struct filepointer *fp)
-{
-	free(fp->f_base);
-	free(fp);
-}
-
-char *copy(char *str)
-{
-	char	*p = (char *)malloc(strlen(str) + 1);
-
-	strcpy(p, str);
-	return(p);
-}
-
-int
-match(char *str, char **list)
-{
-	int	i;
-
-	for (i=0; *list; i++, list++)
-		if (strcmp(str, *list) == 0)
-			return(i);
-	return(-1);
-}
-
-/*
- * Get the next line.  We only return lines beginning with '#' since that
- * is all this program is ever interested in.
- */
-char *getnextline(struct filepointer *filep)
-{
-	char	*p,	/* walking pointer */
-		*eof,	/* end of file pointer */
-		*bol;	/* beginning of line pointer */
-	int	lineno;	/* line number */
-	boolean whitespace = FALSE;
-
-	/*
-	 * Fake the "-include" line files in form of #include to the
-	 * start of each file.
-	 */
-	if (filep->cmdinc_line < filep->cmdinc_count) {
-		char *inc = filep->cmdinc_list[2 * filep->cmdinc_line + 0];
-		char *buf = filep->cmdinc_list[2 * filep->cmdinc_line + 1];
-		filep->cmdinc_line++;
-		sprintf(buf,"%s%s%s",DASH_INC_PRE,inc,DASH_INC_POST);
-		DBG_PRINT(stderr,"%s\n",buf);
-		return(buf);
-	}
-
-	p = filep->f_p;
-	eof = filep->f_end;
-	if (p >= eof)
-		return((char *)NULL);
-	lineno = filep->f_line;
-
-	for (bol = p--; ++p < eof; ) {
-		if ((bol == p) && ((*p == ' ') || (*p == '\t')))
-		{
-			/* Consume leading white-spaces for this line */
-			while (((p+1) < eof) && ((*p == ' ') || (*p == '\t')))
-			{
-				p++;
-				bol++;
-			}
-			whitespace = TRUE;
-		}
-        
-		if (*p == '/' && (p+1) < eof && *(p+1) == '*') {
-			/* Consume C comments */
-			*(p++) = ' ';
-			*(p++) = ' ';
-			while (p < eof && *p) {
-				if (*p == '*' && (p+1) < eof && *(p+1) == '/') {
-					*(p++) = ' ';
-					*(p++) = ' ';
-					break;
-				}
-				if (*p == '\n')
-					lineno++;
-				*(p++) = ' ';
-			}
-			--p;
-		}
-		else if (*p == '/' && (p+1) < eof && *(p+1) == '/') {
-			/* Consume C++ comments */
-			*(p++) = ' ';
-			*(p++) = ' ';
-			while (p < eof && *p) {
-				if (*p == '\\' && (p+1) < eof &&
-				    *(p+1) == '\n') {
-					*(p++) = ' ';
-					lineno++;
-				}
-				else if (*p == '?' && (p+3) < eof &&
-					 *(p+1) == '?' && 
-					 *(p+2) == '/' &&
-					 *(p+3) == '\n') {
-					*(p++) = ' ';
-					*(p++) = ' ';
-					*(p++) = ' ';
-					lineno++;
-				}
-				else if (*p == '\n')
-					break;	/* to process end of line */
-				*(p++) = ' ';
-			}
-			--p;
-		}
-		else if (*p == '\\' && (p+1) < eof && *(p+1) == '\n') {
-			/* Consume backslash line terminations */
-			*(p++) = ' ';
-			*p = ' ';
-			lineno++;
-		}
-		else if (*p == '?' && (p+3) < eof &&
-			 *(p+1) == '?' && *(p+2) == '/' && *(p+3) == '\n') {
-			/* Consume trigraph'ed backslash line terminations */
-			*(p++) = ' ';
-			*(p++) = ' ';
-			*(p++) = ' ';
-			*p = ' ';
-			lineno++;
-		}
-		else if (*p == '\n') {
-			lineno++;
-			if (*bol == '#') {
-				char *cp;
-
-				*(p++) = '\0';
-				/* punt lines with just # (yacc generated) */
-				for (cp = bol+1; 
-				     *cp && (*cp == ' ' || *cp == '\t'); cp++);
-				if (*cp) goto done;
-				--p;
-			}
-			bol = p+1;
-			whitespace = FALSE;
-		}
-	}
-	if (*bol != '#')
-		bol = NULL;
-done:
-	if (bol && whitespace) {
-		warning("%s:  non-portable whitespace encountered at line %d\n",
-			filep->f_name, lineno);
-	}
-	filep->f_p = p;
-	filep->f_line = lineno;
-#ifdef DEBUG_DUMP
-	if (bol)
-		DBG_PRINT(stderr,"%s\n",bol);
-#endif
-	return(bol);
-}
-
-/*
- * Strip the file name down to what we want to see in the Makefile.
- * It will have objprefix and objsuffix around it.
- */
-char *base_name(char *file)
-{
-	char	*p;
-
-	file = copy(file);
-	for(p=file+strlen(file); p>file && *p != '.'; p--) ;
-
-	if (*p == '.')
-		*p = '\0';
-	return(file);
-}
-
-#if defined(USG) && !defined(CRAY) && !defined(SVR4) && !defined(__UNIXOS2__) && !defined(clipper) && !defined(__clipper__)
-int rename (char *from, char *to)
-{
-    (void) unlink (to);
-    if (link (from, to) == 0) {
-	unlink (from);
-	return 0;
-    } else {
-	return -1;
-    }
-}
-#endif /* USGISH */
-
-void
-redirect(char *line, char *makefile)
-{
-	struct stat	st;
-	FILE	*fdin, *fdout;
-	char	backup[ BUFSIZ ],
-		buf[ BUFSIZ ];
-	boolean	found = FALSE;
-	int	len;
-
-	/*
-	 * if makefile is "-" then let it pour onto stdout.
-	 */
-	if (makefile && *makefile == '-' && *(makefile+1) == '\0') {
-		puts(line);
-		return;
-	}
-
-	/*
-	 * use a default makefile is not specified.
-	 */
-	if (!makefile) {
-		if (stat("Makefile", &st) == 0)
-			makefile = "Makefile";
-		else if (stat("makefile", &st) == 0)
-			makefile = "makefile";
-		else
-			fatalerr("[mM]akefile is not present\n");
-	}
-	else
-	    stat(makefile, &st);
-	if ((fdin = fopen(makefile, "r")) == NULL)
-		fatalerr("cannot open \"%s\"\n", makefile);
-	sprintf(backup, "%s.bak", makefile);
-	unlink(backup);
-#if defined(WIN32) || defined(__UNIXOS2__) || defined(__CYGWIN__)
-	fclose(fdin);
-#endif
-	if (rename(makefile, backup) < 0)
-		fatalerr("cannot rename %s to %s\n", makefile, backup);
-#if defined(WIN32) || defined(__UNIXOS2__) || defined(__CYGWIN__)
-	if ((fdin = fopen(backup, "r")) == NULL)
-		fatalerr("cannot open \"%s\"\n", backup);
-#endif
-	if ((fdout = freopen(makefile, "w", stdout)) == NULL)
-		fatalerr("cannot open \"%s\"\n", backup);
-	len = strlen(line);
-	while (!found && fgets(buf, BUFSIZ, fdin)) {
-		if (*buf == '#' && strncmp(line, buf, len) == 0)
-			found = TRUE;
-		fputs(buf, fdout);
-	}
-	if (!found) {
-		if (verbose)
-		warning("Adding new delimiting line \"%s\" and dependencies...\n",
-			line);
-		puts(line); /* same as fputs(fdout); but with newline */
-	} else if (append) {
-	    while (fgets(buf, BUFSIZ, fdin)) {
-		fputs(buf, fdout);
-	    }
-	}
-	fflush(fdout);
-#if defined(USGISH) || defined(_SEQUENT_) || defined(USE_CHMOD)
-	chmod(makefile, st.st_mode);
-#else
-        fchmod(fileno(fdout), st.st_mode);
-#endif /* USGISH */
-}
-
-void
-fatalerr(char *msg, ...)
-{
-	va_list args;
-	fprintf(stderr, "%s: error:  ", ProgramName);
-	va_start(args, msg);
-	vfprintf(stderr, msg, args);
-	va_end(args);
-	exit (1);
-}
-
-void
-warning(char *msg, ...)
-{
-	va_list args;
-	fprintf(stderr, "%s: warning:  ", ProgramName);
-	va_start(args, msg);
-	vfprintf(stderr, msg, args);
-	va_end(args);
-}
-
-void
-warning1(char *msg, ...)
-{
-	va_list args;
-	va_start(args, msg);
-	vfprintf(stderr, msg, args);
-	va_end(args);
-}
deleted file mode 100644
--- a/js/src/config/mkdepend/mkdepend.man
+++ /dev/null
@@ -1,382 +0,0 @@
-.\" $Xorg: mkdepend.man,v 1.5 2001/02/09 02:03:16 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 
-.\" dealing in this Software without prior written authorization from The
-.\" Open Group.
-.\"
-.\" $XFree86: xc/config/makedepend/mkdepend.man,v 1.7 2002/12/14 02:39:45 dawes Exp $
-.\"
-.TH MAKEDEPEND 1 __xorgversion__
-.UC 4
-.SH NAME
-makedepend \- create dependencies in makefiles
-.SH SYNOPSIS
-.B makedepend
-[
-.BI \-D name\fB=\fPdef
-] [
-.BI \-D name
-] [
-.BI \-I includedir
-] [
-.BI \-Y includedir
-] [
-.B \-a
-] [
-.BI \-f makefile
-] [
-.BI \-include \ file
-] [
-.BI \-o objsuffix
-] [
-.BI \-p objprefix
-] [
-.BI \-s string
-] [
-.BI \-w width
-] [
-.B \-v
-] [
-.B \-m
-] [
-\-\^\-
-.I otheroptions
-\-\^\-
-]
-.I sourcefile
-\&.\|.\|.
-.br
-.SH DESCRIPTION
-The
-.B makedepend
-program reads each
-.I sourcefile
-in sequence and parses it like a C-preprocessor,
-processing all
-.I #include,
-.I #define,
-.I #undef,
-.I #ifdef,
-.I #ifndef,
-.I #endif,
-.I #if,
-.I #elif
-and
-.I #else
-directives so that it can correctly tell which
-.I #include,
-directives would be used in a compilation.
-Any
-.I #include,
-directives can reference files having other
-.I #include
-directives, and parsing will occur in these files as well.
-.PP
-Every file that a
-.I sourcefile
-includes,
-directly or indirectly,
-is what
-.B makedepend
-calls a \fIdependency.\fP
-These dependencies are then written to a
-.I makefile
-in such a way that
-.B make(1)
-will know which object files must be recompiled when a dependency has changed.
-.PP
-By default,
-.B makedepend
-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
-the line
-.sp
-\&    # DO NOT DELETE THIS LINE \-\^\- make depend depends on it.
-.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 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 end of the makefile
-and place the output following that.
-For each
-.I sourcefile
-appearing on the command line,
-.B makedepend
-puts lines in the makefile of the form
-.sp
-     sourcefile.o:\0dfile .\|.\|.
-.sp
-Where \fIsourcefile.o\fP is the name from the command
-line with its suffix replaced with ``.o'',
-and \fIdfile\fP is a dependency discovered in a
-.I #include
-directive while parsing
-.I sourcefile
-or one of the files it included.
-.SH EXAMPLE
-Normally,
-.B makedepend
-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:
-            makedepend\0\-\^\-\0$(CFLAGS)\0\-\^\-\0$(SRCS)
-.fi
-.SH OPTIONS
-The program
-will ignore any option that it does not understand so that you may use
-the same arguments that you would for
-.B cc(1).
-.TP 5
-.B \-D\fIname\fP=\fIdef\fP \fRor\fP \-D\fIname\fP
-Define.
-This places a definition for
-.I name
-in
-.B makedepend's
-symbol table.
-Without 
-.I =def\|
-the symbol becomes defined as ``1''.
-.TP 5
-.B \-I\fIincludedir\fP
-Include directory.
-This option tells
-.B makedepend
-to prepend
-.I includedir
-to its list of directories to search when it encounters
-a
-.I #include
-directive.
-By default,
-.B makedepend
-only searches the standard include directories (usually /usr/include
-and possibly a compiler-dependent directory).
-.TP 5
-.B \-Y\fIincludedir\fP
-Replace all of the standard include directories with the single specified
-include directory; you can omit the
-.I includedir
-to simply prevent searching the standard include directories.
-.TP 5
-.B \-a
-Append the dependencies to the end of the file instead of replacing them. 
-.TP 5
-.B \-f\fImakefile\fP
-Filename.
-This allows you to specify an alternate makefile in which
-.B makedepend
-can place its output.
-Specifying ``\-'' as the file name (i.e., \fB\-f\-\fP) sends the
-output to standard output instead of modifying an existing file.
-.TP 5
-.B \-include \fIfile\fP
-Process file as input, and include all the resulting output
-before processing the regular input file. This has the same
-affect as if the specified file is an include statement that
-appears before the very first line of the regular input file.
-.TP 5
-.B \-o\fIobjsuffix\fP
-Object file suffix.
-Some systems may have object files whose suffix is something other
-than ``.o''.
-This option allows you to specify another suffix, such as
-``.b'' with
-.I \-o.b
-or ``:obj''
-with
-.I \-o:obj
-and so forth.
-.TP 5
-.B \-p\fIobjprefix\fP
-Object file prefix.
-The prefix is prepended to the name of the object file. This is
-usually used to designate a different directory for the object file.
-The default is the empty string.
-.TP 5
-.B \-s\fIstring\fP
-Starting string delimiter.
-This option permits you to specify
-a different string for
-.B makedepend
-to look for in the makefile.
-.TP 5
-.B \-w\fIwidth\fP
-Line width.
-Normally,
-.B makedepend
-will ensure that every output line that it writes will be no wider than
-78 characters for the sake of readability.
-This option enables you to change this width.
-.TP 5
-.B \-v
-Verbose operation.
-This option causes 
-.B makedepend
-to emit the list of files included by each input file.
-.TP 5
-.B \-m
-Warn about multiple inclusion.
-This option causes 
-.B makedepend
-to produce a warning if any input file includes another file more than
-once.  In previous versions of 
-.B makedepend
-this was the default behavior; the default has been changed to better
-match the behavior of the C compiler, which does not consider multiple
-inclusion to be an error.  This option is provided for backward 
-compatibility, and to aid in debugging problems related to multiple
-inclusion.
-.TP 5
-.B "\-\^\- \fIoptions\fP \-\^\-"
-If
-.B makedepend
-encounters a double hyphen (\-\^\-) in the argument list,
-then any unrecognized argument following it
-will be silently ignored; a second double hyphen terminates this
-special treatment.
-In this way,
-.B makedepend
-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).
-All options that
-.B makedepend
-recognizes and appear between the pair of double hyphens
-are processed normally.
-.SH ALGORITHM
-The approach used in this program enables it to run an order of magnitude
-faster than any other ``dependency generator'' I have ever seen.
-Central to this performance are two assumptions:
-that all files compiled by a single
-makefile will be compiled with roughly the same
-.I \-I
-and
-.I \-D
-options;
-and that most files in a single directory will include largely the
-same files.
-.PP
-Given these assumptions,
-.B makedepend
-expects to be called once for each makefile, with
-all source files that are maintained by the
-makefile appearing on the command line.
-It parses each source and include
-file exactly once, maintaining an internal symbol table
-for each.
-Thus, the first file on the command line will take an amount of time
-proportional to the amount of time that a normal C preprocessor takes.
-But on subsequent files, if it encounters an include file
-that it has already parsed, it does not parse it again.
-.PP
-For example,
-imagine you are compiling two files,
-.I file1.c
-and
-.I file2.c,
-they each include the header file
-.I header.h,
-and the file
-.I header.h
-in turn includes the files
-.I def1.h
-and
-.I def2.h.
-When you run the command
-.sp
-    makedepend\0file1.c\0file2.c
-.sp
-.B makedepend
-will parse
-.I file1.c
-and consequently,
-.I header.h
-and then
-.I def1.h
-and
-.I def2.h.
-It then decides that the dependencies for this file are
-.sp
-    file1.o:\0header.h\0def1.h\0def2.h
-.sp
-But when the program parses
-.I file2.c
-and discovers that it, too, includes
-.I header.h,
-it does not parse the file,
-but simply adds
-.I header.h,
-.I def1.h
-and
-.I def2.h
-to the list of dependencies for
-.I file2.o.
-.SH "SEE ALSO"
-cc(1), make(1)
-.SH BUGS
-.B makedepend
-parses, but does not currently evaluate, the SVR4 #predicate(token-list)
-preprocessor expression; such expressions are simply assumed to be true.
-This may cause the wrong
-.I #include
-directives to be evaluated.
-.PP
-Imagine you are parsing two files,
-say
-.I file1.c
-and
-.I file2.c,
-each includes the file
-.I def.h.
-The list of files that
-.I def.h
-includes might truly be different when
-.I def.h
-is included by
-.I file1.c
-than when it is included by
-.I file2.c.
-But once
-.B makedepend
-arrives at a list of dependencies for a file,
-it is cast in concrete.
-.SH AUTHOR
-Todd Brunhoff, Tektronix, Inc. and MIT Project Athena
deleted file mode 100644
--- a/js/src/config/mkdepend/parse.c
+++ /dev/null
@@ -1,686 +0,0 @@
-/* $Xorg: parse.c,v 1.6 2001/02/09 02:03:16 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/makedepend/parse.c,v 1.12 2002/02/26 05:09:10 tsi Exp $ */
-
-#include "def.h"
-
-extern char	*directives[];
-extern struct inclist	inclist[ MAXFILES ],
-			*inclistnext,
-			maininclist;
-extern char	*includedirs[ ],
-		**includedirsnext;
-
-static int deftype (char *line, struct filepointer *filep,
-		    struct inclist *file_red, struct inclist *file,
-		    int parse_it);
-static int zero_value(char *filename, char *exp, struct filepointer *filep,
-		    struct inclist *file_red);
-static int merge2defines(struct inclist *file1, struct inclist *file2);
-
-static int
-gobble(struct filepointer *filep, struct inclist *file,
-       struct inclist *file_red)
-{
-	char	*line;
-	int	type;
-
-	while ((line = getnextline(filep))) {
-		switch(type = deftype(line, filep, file_red, file, FALSE)) {
-		case IF:
-		case IFFALSE:
-		case IFGUESSFALSE:
-		case IFDEF:
-		case IFNDEF:
-			type = gobble(filep, file, file_red);
-			while ((type == ELIF) || (type == ELIFFALSE) ||
-			       (type == ELIFGUESSFALSE))
-			    type = gobble(filep, file, file_red);
-			if (type == ELSE)
-			        (void)gobble(filep, file, file_red);
-			break;
-		case ELSE:
-		case ENDIF:
-			debug(0,("%s, line %d: #%s\n",
-				file->i_file, filep->f_line,
-				directives[type]));
-			return(type);
-		case DEFINE:
-		case UNDEF:
-		case INCLUDE:
-		case INCLUDEDOT:
-		case PRAGMA:
-		case ERROR:
-		case IDENT:
-		case SCCS:
-		case EJECT:
-		case WARNING:
-		case INCLUDENEXT:
-		case INCLUDENEXTDOT:
-			break;
-		case ELIF:
-		case ELIFFALSE:
-		case ELIFGUESSFALSE:
-			return(type);
-		case -1:
-			warning("%s", file_red->i_file);
-			if (file_red != file)
-				warning1(" (reading %s)", file->i_file);
-			warning1(", line %d: unknown directive == \"%s\"\n",
-				filep->f_line, line);
-			break;
-		}
-	}
-	return(-1);
-}
-
-/*
- * Decide what type of # directive this line is.
- */
-static int 
-deftype (char *line, struct filepointer *filep, 
-	     struct inclist *file_red, struct inclist *file, int parse_it)
-{
-	register char	*p;
-	char	*directive, savechar, *q;
-	register int	ret;
-
-	/*
-	 * Parse the directive...
-	 */
-	directive=line+1;
-	while (*directive == ' ' || *directive == '\t')
-		directive++;
-
-	p = directive;
-	while ((*p == '_') || (*p >= 'a' && *p <= 'z'))
-		p++;
-	savechar = *p;
-	*p = '\0';
-	ret = match(directive, directives);
-	*p = savechar;
-
-	/* If we don't recognize this compiler directive or we happen to just
-	 * be gobbling up text while waiting for an #endif or #elif or #else
-	 * in the case of an #elif we must check the zero_value and return an
-	 * ELIF or an ELIFFALSE.
-	 */
-
-	if (ret == ELIF && !parse_it)
-	{
-	    while (*p == ' ' || *p == '\t')
-		p++;
-	    /*
-	     * parse an expression.
-	     */
-	    debug(0,("%s, line %d: #elif %s ",
-		   file->i_file, filep->f_line, p));
-	    ret = zero_value(file->i_file, p, filep, file_red);
-	    if (ret != IF)
-	    {
-		debug(0,("false...\n"));
-		if (ret == IFFALSE)
-		    return(ELIFFALSE);
-		else
-		    return(ELIFGUESSFALSE);
-	    }
-	    else
-	    {
-		debug(0,("true...\n"));
-		return(ELIF);
-	    }
-	}
-
-	if (ret < 0 || ! parse_it)
-		return(ret);
-
-	/*
-	 * now decide how to parse the directive, and do it.
-	 */
-	while (*p == ' ' || *p == '\t')
-		p++;
-	q = p + strlen(p);
-	do {
-		q--;
-	} while (*q == ' ' || *q == '\t');
-	q[1] = '\0';
-	switch (ret) {
-	case IF:
-		/*
-		 * parse an expression.
-		 */
-		ret = zero_value(file->i_file, p, filep, file_red);
-		debug(0,("%s, line %d: %s #if %s\n",
-			 file->i_file, filep->f_line, ret?"false":"true", p));
-		break;
-	case IFDEF:
-	case IFNDEF:
-		debug(0,("%s, line %d: #%s %s\n",
-			file->i_file, filep->f_line, directives[ret], p));
-	case UNDEF:
-		/*
-		 * separate the name of a single symbol.
-		 */
-		while (isalnum(*p) || *p == '_')
-			*line++ = *p++;
-		*line = '\0';
-		break;
-	case INCLUDE:
-	case INCLUDENEXT:
-		debug(2,("%s, line %d: #include%s %s\n",
-			file->i_file, filep->f_line,
-			(ret == INCLUDE) ? "" : "_next", p));
-
-		/* Support ANSI macro substitution */
-		while (1) {
-			struct symtab **sym;
-
-			if (!*p || *p == '"' || *p == '<')
-				break;
-
-		    	sym = isdefined(p, file_red, NULL);
-			if (!sym)
-				break;
-
-			p = (*sym)->s_value;
-			debug(3,("%s : #includes SYMBOL %s = %s\n",
-			       file->i_incstring,
-			       (*sym) -> s_name,
-			       (*sym) -> s_value));
-			/* mark file as having included a 'soft include' */
-			file->i_flags |= INCLUDED_SYM; 
-		}
-
-		/*
-		 * Separate the name of the include file.
-		 */
-		while (*p && *p != '"' && *p != '<')
-			p++;
-		if (! *p)
-			return(-2);
-		if (*p++ == '"') {
-			if (ret == INCLUDE)
-				ret = INCLUDEDOT;
-			else
-				ret = INCLUDENEXTDOT;
-			while (*p && *p != '"')
-				*line++ = *p++;
-		} else
-			while (*p && *p != '>')
-				*line++ = *p++;
-		*line = '\0';
-		break;
-	case DEFINE:
-		/*
-		 * copy the definition back to the beginning of the line.
-		 */
-		strcpy (line, p);
-		break;
-	case ELSE:
-	case ENDIF:
-	case ELIF:
-	case PRAGMA:
-	case ERROR:
-	case IDENT:
-	case SCCS:
-	case EJECT:
-	case WARNING:
-		debug(0,("%s, line %d: #%s\n",
-			file->i_file, filep->f_line, directives[ret]));
-		/*
-		 * nothing to do.
-		 */
-		break;
-	}
-	return(ret);
-}
-
-struct symtab **
-fdefined(char *symbol, struct inclist *file, struct inclist **srcfile)
-{
-	struct inclist	**ip;
-	struct symtab	**val;
-	int	i;
-	static int	recurse_lvl = 0;
-
-	if (file->i_flags & DEFCHECKED)
-		return(NULL);
-	debug(2,("Looking for %s in %s\n", symbol, file->i_file));
-	file->i_flags |= DEFCHECKED;
-	if ((val = slookup(symbol, file)))
-		debug(1,("%s defined in %s as %s\n",
-			 symbol, file->i_file, (*val)->s_value));
-	if (val == NULL && file->i_list)
-	{
-		for (ip = file->i_list, i=0; i < file->i_listlen; i++, ip++)
-			if (file->i_merged[i]==FALSE) {
-				val = fdefined(symbol, *ip, srcfile);
-				file->i_merged[i]=merge2defines(file,*ip);
-				if (val!=NULL) break;
-			}
-	}
-	else if (val != NULL && srcfile != NULL) *srcfile = file;
-	recurse_lvl--;
-	file->i_flags &= ~DEFCHECKED;
-
-	return(val);
-}
-
-struct symtab **
-isdefined(char *symbol, struct inclist *file, struct inclist **srcfile)
-{
-	struct symtab	**val;
-
-	if ((val = slookup(symbol, &maininclist))) {
-		debug(1,("%s defined on command line\n", symbol));
-		if (srcfile != NULL) *srcfile = &maininclist;
-		return(val);
-	}
-	if ((val = fdefined(symbol, file, srcfile)))
-		return(val);
-	debug(1,("%s not defined in %s\n", symbol, file->i_file));
-	return(NULL);
-}
-
-/*
- * Return type based on if the #if expression evaluates to 0
- */
-static int
-zero_value(char *filename,
-	   char *exp,
-	   struct filepointer *filep,
-	   struct inclist *file_red)
-{
-	if (cppsetup(filename, exp, filep, file_red))
-	    return(IFFALSE);
-	else
-	    return(IF);
-}
-
-void
-define2(char *name, char *val, struct inclist *file)
-{
-    int first, last, below;
-    register struct symtab **sp = NULL, **dest;
-    struct symtab *stab;
-
-    /* Make space if it's needed */
-    if (file->i_defs == NULL)
-    {
-	file->i_defs = (struct symtab **)
-			malloc(sizeof (struct symtab*) * SYMTABINC);
-	file->i_ndefs = 0;
-    }
-    else if (!(file->i_ndefs % SYMTABINC))
-	file->i_defs = (struct symtab **)
-			realloc(file->i_defs,
-			   sizeof(struct symtab*)*(file->i_ndefs+SYMTABINC));
-
-    if (file->i_defs == NULL)
-	fatalerr("malloc()/realloc() failure in insert_defn()\n");
-
-    below = first = 0;
-    last = file->i_ndefs - 1;
-    while (last >= first)
-    {
-	/* Fast inline binary search */
-	register char *s1;
-	register char *s2;
-	register int middle = (first + last) / 2;
-
-	/* Fast inline strchr() */
-	s1 = name;
-	s2 = file->i_defs[middle]->s_name;
-	while (*s1++ == *s2++)
-	    if (s2[-1] == '\0') break;
-
-	/* If exact match, set sp and break */
-	if (*--s1 == *--s2) 
-	{
-	    sp = file->i_defs + middle;
-	    break;
-	}
-
-	/* If name > i_defs[middle] ... */
-	if (*s1 > *s2) 
-	{
-	    below = first;
-	    first = middle + 1;
-	}
-	/* else ... */
-	else
-	{
-	    below = last = middle - 1;
-	}
-    }
-
-    /* Search is done.  If we found an exact match to the symbol name,
-       just replace its s_value */
-    if (sp != NULL)
-    {
-	debug(1,("redefining %s from %s to %s in file %s\n",
-		name, (*sp)->s_value, val, file->i_file));
-	free((*sp)->s_value);
-	(*sp)->s_value = copy(val);
-	return;
-    }
-
-    sp = file->i_defs + file->i_ndefs++;
-    dest = file->i_defs + below + 1;
-    while (sp > dest)
-    {
-	*sp = sp[-1];
-	sp--;
-    }
-    stab = (struct symtab *) malloc(sizeof (struct symtab));
-    if (stab == NULL)
-	fatalerr("malloc()/realloc() failure in insert_defn()\n");
-
-    debug(1,("defining %s to %s in file %s\n", name, val, file->i_file));
-    stab->s_name = copy(name);
-    stab->s_value = copy(val);
-    *sp = stab;
-}
-
-void
-define(char *def, struct inclist *file)
-{
-    char *val;
-
-    /* Separate symbol name and its value */
-    val = def;
-    while (isalnum(*val) || *val == '_')
-	val++;
-    if (*val)
-	*val++ = '\0';
-    while (*val == ' ' || *val == '\t')
-	val++;
-
-    if (!*val)
-	val = "1";
-    define2(def, val, file);
-}
-
-struct symtab **
-slookup(char *symbol, struct inclist *file)
-{
-	register int first = 0;
-	register int last = file->i_ndefs - 1;
-
-	if (file) while (last >= first)
-	{
-	    /* Fast inline binary search */
-	    register char *s1;
-	    register char *s2;
-	    register int middle = (first + last) / 2;
-
-	    /* Fast inline strchr() */
-	    s1 = symbol;
-	    s2 = file->i_defs[middle]->s_name;
-	    while (*s1++ == *s2++)
-	        if (s2[-1] == '\0') break;
-
-	    /* If exact match, we're done */
-	    if (*--s1 == *--s2) 
-	    {
-	        return file->i_defs + middle;
-	    }
-
-	    /* If symbol > i_defs[middle] ... */
-	    if (*s1 > *s2) 
-	    {
-	        first = middle + 1;
-	    }
-	    /* else ... */
-	    else
-	    {
-	        last = middle - 1;
-	    }
-	}
-	return(NULL);
-}
-
-static int 
-merge2defines(struct inclist *file1, struct inclist *file2)
-{
-	int i;
-
-	if ((file1==NULL) || (file2==NULL) ||
-	    !(file2->i_flags & FINISHED))
-		return 0;
-
-	for (i=0; i < file2->i_listlen; i++)
-		if (file2->i_merged[i]==FALSE)
-			return 0;
-
-	{
-		int first1 = 0;
-		int last1 = file1->i_ndefs - 1;
-
-		int first2 = 0;
-		int last2 = file2->i_ndefs - 1;
-
-                int first=0;
-                struct symtab** i_defs = NULL;
-		int deflen=file1->i_ndefs+file2->i_ndefs;
-
-		debug(2,("merging %s into %s\n",
-			file2->i_file, file1->i_file));
-
-                if (deflen>0)
-                { 
-                	/* make sure deflen % SYMTABINC == 0 is still true */
-                	deflen += (SYMTABINC - deflen % SYMTABINC) % SYMTABINC;
-                	i_defs=(struct symtab**)
-			    malloc(deflen*sizeof(struct symtab*));
-                	if (i_defs==NULL) return 0;
-        	}
-
-        	while ((last1 >= first1) && (last2 >= first2))
-        	{
-	    		char *s1=file1->i_defs[first1]->s_name;
-	    		char *s2=file2->i_defs[first2]->s_name;
-
-     			if (strcmp(s1,s2) < 0)
-                        	i_defs[first++]=file1->i_defs[first1++];
-     			else if (strcmp(s1,s2) > 0)
-                        	i_defs[first++]=file2->i_defs[first2++];
-                        else /* equal */
-                        {
-                        	i_defs[first++]=file2->i_defs[first2++];
-                                first1++;
-                        }
-        	}
-        	while (last1 >= first1)
-        	{
-                        i_defs[first++]=file1->i_defs[first1++];
-        	}
-        	while (last2 >= first2)
-        	{
-                        i_defs[first++]=file2->i_defs[first2++];
-        	}
-
-                if (file1->i_defs) free(file1->i_defs);
-                file1->i_defs=i_defs;
-                file1->i_ndefs=first;
-                
-		return 1;
-  	}
-}
-
-void
-undefine(char *symbol, struct inclist *file)
-{
-	register struct symtab **ptr;
-	struct inclist *srcfile;
-	while ((ptr = isdefined(symbol, file, &srcfile)) != NULL)
-	{
-	    srcfile->i_ndefs--;
-	    for (; ptr < srcfile->i_defs + srcfile->i_ndefs; ptr++)
-		*ptr = ptr[1];
-	}
-}
-
-int
-find_includes(struct filepointer *filep, struct inclist *file, 
-	      struct inclist *file_red, int recursion, boolean failOK)
-{
-	struct inclist	*inclistp;
-	char		**includedirsp;
-	register char	*line;
-	register int	type;
-	boolean recfailOK;
-
-	while ((line = getnextline(filep))) {
-		switch(type = deftype(line, filep, file_red, file, TRUE)) {
-		case IF:
-		doif:
-			type = find_includes(filep, file,
-				file_red, recursion+1, failOK);
-			while ((type == ELIF) || (type == ELIFFALSE) ||
-			       (type == ELIFGUESSFALSE))
-				type = gobble(filep, file, file_red);
-			if (type == ELSE)
-				gobble(filep, file, file_red);
-			break;
-		case IFFALSE:
-		case IFGUESSFALSE:
-		    doiffalse:
-			if (type == IFGUESSFALSE || type == ELIFGUESSFALSE)
-			    recfailOK = TRUE;
-			else
-			    recfailOK = failOK;
-			type = gobble(filep, file, file_red);
-			if (type == ELSE)
-			    find_includes(filep, file,
-					  file_red, recursion+1, recfailOK);
-			else
-			if (type == ELIF)
-			    goto doif;
-			else
-			if ((type == ELIFFALSE) || (type == ELIFGUESSFALSE))
-			    goto doiffalse;
-			break;
-		case IFDEF:
-		case IFNDEF:
-			if ((type == IFDEF && isdefined(line, file_red, NULL))
-			 || (type == IFNDEF && !isdefined(line, file_red, NULL))) {
-				debug(1,(type == IFNDEF ?
-				    "line %d: %s !def'd in %s via %s%s\n" : "",
-				    filep->f_line, line,
-				    file->i_file, file_red->i_file, ": doit"));
-				type = find_includes(filep, file,
-					file_red, recursion+1, failOK);
-				while (type == ELIF || type == ELIFFALSE || type == ELIFGUESSFALSE)
-					type = gobble(filep, file, file_red);
-				if (type == ELSE)
-					gobble(filep, file, file_red);
-			}
-			else {
-				debug(1,(type == IFDEF ?
-				    "line %d: %s !def'd in %s via %s%s\n" : "",
-				    filep->f_line, line,
-				    file->i_file, file_red->i_file, ": gobble"));
-				type = gobble(filep, file, file_red);
-				if (type == ELSE)
-					find_includes(filep, file,
-						file_red, recursion+1, failOK);
-				else if (type == ELIF)
-				    	goto doif;
-				else if (type == ELIFFALSE || type == ELIFGUESSFALSE)
-				    	goto doiffalse;
-			}
-			break;
-		case ELSE:
-		case ELIFFALSE:
-		case ELIFGUESSFALSE:
-		case ELIF:
-			if (!recursion)
-				gobble(filep, file, file_red);
-		case ENDIF:
-			if (recursion)
-				return(type);
-		case DEFINE:
-			define(line, file);
-			break;
-		case UNDEF:
-			if (!*line) {
-			    warning("%s", file_red->i_file);
-			    if (file_red != file)
-				warning1(" (reading %s)", file->i_file);
-			    warning1(", line %d: incomplete undef == \"%s\"\n",
-				filep->f_line, line);
-			    break;
-			}
-			undefine(line, file_red);
-			break;
-		case INCLUDE:
-		case INCLUDEDOT:
-		case INCLUDENEXT:
-		case INCLUDENEXTDOT:
-			inclistp = inclistnext;
-			includedirsp = includedirsnext;
-			debug(2,("%s, reading %s, includes %s\n",
-				file_red->i_file, file->i_file, line));
-			add_include(filep, file, file_red, line, type, failOK);
-			inclistnext = inclistp;
-			includedirsnext = includedirsp;
-			break;
-		case ERROR:
-		case WARNING:
-		    	warning("%s", file_red->i_file);
-			if (file_red != file)
-				warning1(" (reading %s)", file->i_file);
-			warning1(", line %d: %s\n",
-				 filep->f_line, line);
-		    	break;
-		    
-		case PRAGMA:
-		case IDENT:
-		case SCCS:
-		case EJECT:
-			break;
-		case -1:
-			warning("%s", file_red->i_file);
-			if (file_red != file)
-			    warning1(" (reading %s)", file->i_file);
-			warning1(", line %d: unknown directive == \"%s\"\n",
-				 filep->f_line, line);
-			break;
-		case -2:
-			warning("%s", file_red->i_file);
-			if (file_red != file)
-			    warning1(" (reading %s)", file->i_file);
-			warning1(", line %d: incomplete include == \"%s\"\n",
-				 filep->f_line, line);
-			break;
-		}
-	}
-	file->i_flags |= FINISHED;
-	debug(2,("finished with %s\n", file->i_file));
-	return(-1);
-}
deleted file mode 100644
--- a/js/src/config/mkdepend/pr.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/* $Xorg: pr.c,v 1.4 2001/02/09 02:03:16 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/makedepend/pr.c,v 1.5 2001/12/14 19:53:21 dawes Exp $ */
-
-#include "def.h"
-
-extern struct	inclist	inclist[ MAXFILES ],
-			*inclistp;
-extern char	*objprefix;
-extern char	*objsuffix;
-extern int	width;
-extern boolean	printed;
-extern boolean	verbose;
-extern boolean	show_where_not;
-
-void
-add_include(struct filepointer *filep, struct inclist *file, 
-	    struct inclist *file_red, char *include, int type,
-	    boolean failOK)
-{
-	register struct inclist	*newfile;
-	register struct filepointer	*content;
-
-	/*
-	 * First decide what the pathname of this include file really is.
-	 */
-	newfile = inc_path(file->i_file, include, type);
-	if (newfile == NULL) {
-		if (failOK)
-		    return;
-		if (file != file_red)
-			warning("%s (reading %s, line %d): ",
-				file_red->i_file, file->i_file, filep->f_line);
-		else
-			warning("%s, line %d: ", file->i_file, filep->f_line);
-		warning1("cannot find include file \"%s\"\n", include);
-		show_where_not = TRUE;
-		newfile = inc_path(file->i_file, include, type);
-		show_where_not = FALSE;
-	}
-
-	if (newfile) {
-		included_by(file, newfile);
-		if (!(newfile->i_flags & SEARCHED)) {
-			newfile->i_flags |= SEARCHED;
-			content = getfile(newfile->i_file);
-			find_includes(content, newfile, file_red, 0, failOK);
-			freefile(content);
-		}
-	}
-}
-
-static void
-pr(struct inclist *ip, char *file, char *base)
-{
-	static char	*lastfile;
-	static int	current_len;
-	register int	len, i;
-	char	buf[ BUFSIZ ];
-
-	printed = TRUE;
-	len = strlen(ip->i_file)+1;
-	if (current_len + len > width || file != lastfile) {
-		lastfile = file;
-		sprintf(buf, "\n%s%s%s: %s", objprefix, base, objsuffix,
-			ip->i_file);
-		len = current_len = strlen(buf);
-	}
-	else {
-		buf[0] = ' ';
-		strcpy(buf+1, ip->i_file);
-		current_len += len;
-	}
-	fwrite(buf, len, 1, stdout);
-
-	/*
-	 * If verbose is set, then print out what this file includes.
-	 */
-	if (! verbose || ip->i_list == NULL || ip->i_flags & NOTIFIED)
-		return;
-	ip->i_flags |= NOTIFIED;
-	lastfile = NULL;
-	printf("\n# %s includes:", ip->i_file);
-	for (i=0; i<ip->i_listlen; i++)
-		printf("\n#\t%s", ip->i_list[ i ]->i_incstring);
-}
-
-void
-recursive_pr_include(struct inclist *head, char *file, char *base)
-{
-	int	i;
-
-	if (head->i_flags & MARKED)
-		return;
-	head->i_flags |= MARKED;
-	if (head->i_file != file)
-		pr(head, file, base);
-	for (i=0; i<head->i_listlen; i++)
-		recursive_pr_include(head->i_list[ i ], file, base);
-}
--- a/js/src/config/rules.mk
+++ b/js/src/config/rules.mk
@@ -289,23 +289,16 @@ HOST_CCOBJS = $(addprefix host_,$(patsub
 HOST_CPPOBJS = $(addprefix host_,$(patsubst %.cpp,%.$(OBJ_SUFFIX),$(filter %.cpp,$(HOST_CPPSRCS))))
 HOST_CMOBJS = $(addprefix host_,$(HOST_CMSRCS:.m=.$(OBJ_SUFFIX)))
 HOST_CMMOBJS = $(addprefix host_,$(HOST_CMMSRCS:.mm=.$(OBJ_SUFFIX)))
 ifndef HOST_OBJS
 _HOST_OBJS = $(HOST_COBJS) $(HOST_CCOBJS) $(HOST_CPPOBJS) $(HOST_CMOBJS) $(HOST_CMMOBJS)
 HOST_OBJS = $(strip $(_HOST_OBJS))
 endif
 
-ifndef MOZ_AUTO_DEPS
-ifneq (,$(OBJS)$(XPIDLSRCS)$(SIMPLE_PROGRAMS))
-MDDEPFILES		= $(addprefix $(MDDEPDIR)/,$(OBJS:=.pp))
-MDDEPFILES		+= $(addprefix $(MDDEPDIR)/,$(XPIDLSRCS:.idl=.h.pp) $(XPIDLSRCS:.idl=.xpt.pp))
-endif
-endif
-
 ALL_TRASH = \
 	$(GARBAGE) $(TARGETS) $(OBJS) $(PROGOBJS) LOGS TAGS a.out \
 	$(filter-out $(ASFILES),$(OBJS:.$(OBJ_SUFFIX)=.s)) $(OBJS:.$(OBJ_SUFFIX)=.ii) \
 	$(OBJS:.$(OBJ_SUFFIX)=.i) $(OBJS:.$(OBJ_SUFFIX)=.i_o) \
 	$(HOST_PROGOBJS) $(HOST_OBJS) $(IMPORT_LIBRARY) $(DEF_FILE)\
 	$(EXE_DEF_FILE) so_locations _gen _stubs $(wildcard *.res) $(wildcard *.RES) \
 	$(wildcard *.pdb) $(CODFILE) $(MAPFILE) $(IMPORT_LIBRARY) \
 	$(SHARED_LIBRARY:$(DLL_SUFFIX)=.exp) $(wildcard *.ilk) \
@@ -912,53 +905,32 @@ endif	# WINNT && !GCC
 	chmod +x $@
 ifdef ENABLE_STRIP
 	$(STRIP) $@
 endif
 ifdef MOZ_POST_DSO_LIB_COMMAND
 	$(MOZ_POST_DSO_LIB_COMMAND) $@
 endif
 
-ifdef MOZ_AUTO_DEPS
-ifdef COMPILER_DEPEND
 ifeq ($(SOLARIS_SUNPRO_CC),1)
 _MDDEPFILE = $(MDDEPDIR)/$(@F).pp
 
 define MAKE_DEPS_AUTO_CC
 if test -d $(@D); then \
 	echo "Building deps for $< using Sun Studio cc"; \
 	$(CC) $(COMPILE_CFLAGS) -xM  $< >$(_MDDEPFILE) ; \
 fi
 endef
 define MAKE_DEPS_AUTO_CXX
 if test -d $(@D); then \
 	echo "Building deps for $< using Sun Studio CC"; \
 	$(CXX) $(COMPILE_CXXFLAGS) -xM $< >$(_MDDEPFILE) ; \
 fi
 endef
 endif # Sun Studio on Solaris
-else # COMPILER_DEPEND
-#
-# Generate dependencies on the fly
-#
-_MDDEPFILE = $(MDDEPDIR)/$(@F).pp
-
-define MAKE_DEPS_AUTO
-if test -d $(@D); then \
-	echo "Building deps for $<"; \
-	$(MKDEPEND) -o'.$(OBJ_SUFFIX)' -f- $(DEFINES) $(ACDEFINES) $(XULPPFLAGS) $(INCLUDES) $< 2>/dev/null | sed -e "s|^[^ ]*/||" > $(_MDDEPFILE) ; \
-fi
-endef
-
-MAKE_DEPS_AUTO_CC = $(MAKE_DEPS_AUTO)
-MAKE_DEPS_AUTO_CXX = $(MAKE_DEPS_AUTO)
-
-endif # COMPILER_DEPEND
-
-endif # MOZ_AUTO_DEPS
 
 $(OBJS) $(HOST_OBJS): $(GLOBAL_DEPS)
 
 # Rules for building native targets must come first because of the host_ prefix
 $(HOST_COBJS): host_%.$(OBJ_SUFFIX): %.c
 	$(REPORT_BUILD)
 	$(ELOG) $(HOST_CC) $(HOST_OUTOPTION)$@ -c $(HOST_CFLAGS) $(INCLUDES) $(NSPR_CFLAGS) $(_VPATH_SRCS)
 
@@ -1508,75 +1480,16 @@ endif
 libs::
 	$(RM) -r "$(DIST)/bin/extensions/$(INSTALL_EXTENSION_ID)"
 	$(NSINSTALL) -D "$(DIST)/bin/extensions/$(INSTALL_EXTENSION_ID)"
 	cd $(FINAL_TARGET) && tar $(TAR_CREATE_FLAGS) - . | (cd "../../bin/extensions/$(INSTALL_EXTENSION_ID)" && tar -xf -)
 
 endif
 
 #############################################################################
-# Dependency system
-#############################################################################
-ifdef COMPILER_DEPEND
-depend::
-	@echo "$(MAKE): No need to run depend target.\
-			Using compiler-based depend." 1>&2
-ifeq ($(GNU_CC)$(GNU_CXX),)
-# Non-GNU compilers
-	@echo "`echo '$(MAKE):'|sed 's/./ /g'`"\
-	'(Compiler-based depend was turned on by "--enable-md".)' 1>&2
-else
-# GNU compilers
-	@space="`echo '$(MAKE): '|sed 's/./ /g'`";\
-	echo "$$space"'Since you are using a GNU compiler,\
-		it is on by default.' 1>&2; \
-	echo "$$space"'To turn it off, pass --disable-md to configure.' 1>&2
-endif
-
-else # ! COMPILER_DEPEND
-
-ifndef MOZ_AUTO_DEPS
-
-define MAKE_DEPS_NOAUTO
-	$(MKDEPEND) -w1024 -o'.$(OBJ_SUFFIX)' -f- $(DEFINES) $(ACDEFINES) $(INCLUDES) $< 2>/dev/null | sed -e "s|^[^ ]*/||" > $@
-endef
-
-$(MDDEPDIR)/%.pp: %.c
-	$(REPORT_BUILD)
-	@$(MAKE_DEPS_NOAUTO)
-
-$(MDDEPDIR)/%.pp: %.cpp
-	$(REPORT_BUILD)
-	@$(MAKE_DEPS_NOAUTO)
-
-$(MDDEPDIR)/%.pp: %.s
-	$(REPORT_BUILD)
-	@$(MAKE_DEPS_NOAUTO)
-
-ifneq (,$(OBJS)$(XPIDLSRCS)$(SIMPLE_PROGRAMS))
-depend:: $(SUBMAKEFILES) $(MAKE_DIRS) $(MDDEPFILES)
-else
-depend:: $(SUBMAKEFILES)
-endif
-	$(LOOP_OVER_PARALLEL_DIRS)
-	$(LOOP_OVER_DIRS)
-	$(LOOP_OVER_TOOL_DIRS)
-
-dependclean:: $(SUBMAKEFILES)
-	$(RM) $(MDDEPFILES)
-	$(LOOP_OVER_PARALLEL_DIRS)
-	$(LOOP_OVER_DIRS)
-	$(LOOP_OVER_TOOL_DIRS)
-
-endif # MOZ_AUTO_DEPS
-
-endif # COMPILER_DEPEND
-
-
-#############################################################################
 # MDDEPDIR is the subdirectory where all the dependency files are placed.
 #   This uses a make rule (instead of a macro) to support parallel
 #   builds (-jN). If this were done in the LOOP_OVER_DIRS macro, two
 #   processes could simultaneously try to create the same directory.
 #
 #   We use $(CURDIR) in the rule's target to ensure that we don't find
 #   a dependency directory in the source tree via VPATH (perhaps from
 #   a previous build in the source tree) and thus neglect to create a
--- a/js/src/configure.in
+++ b/js/src/configure.in
@@ -670,17 +670,16 @@ fi
 
 if test -z "$COMPILE_ENVIRONMENT"; then
     NSINSTALL_BIN='$(PYTHON) $(topsrcdir)/config/nsinstall.py'
 fi
 AC_SUBST(NSINSTALL_BIN)
 
 MOZ_PATH_PROG(DOXYGEN, doxygen, :)
 MOZ_PATH_PROG(AUTOCONF, autoconf, :)
-MOZ_PATH_PROG(MOZ_NATIVE_MAKEDEPEND, makedepend)
 MOZ_PATH_PROG(XARGS, xargs)
 if test -z "$XARGS" -o "$XARGS" = ":"; then
     AC_MSG_ERROR([xargs not found in \$PATH .])
 fi
 
 if test "$COMPILE_ENVIRONMENT"; then
 
 dnl ========================================================
@@ -1628,17 +1627,16 @@ ia64*-hpux*)
        MKCSHLIB='$(CC) $(CFLAGS) $(DSO_LDOPTS) -o $@'
        CXXFLAGS="$CXXFLAGS -Wc,-ansi_for_scope,on"
     else
        DSO_LDOPTS='-b -E'
        MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
        MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
     fi
     MOZ_FIX_LINK_PATHS=
-    MOZ_NATIVE_MAKEDEPEND=
     AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
     AC_DEFINE(_LARGEFILE64_SOURCE)
     ;;
 
 *-hpux*)
     DLL_SUFFIX=".sl"
     if test ! "$GNU_CC"; then
     	DSO_LDOPTS='-b -Wl,+s'
@@ -1706,19 +1704,16 @@ ia64*-hpux*)
     ;;
 
 *-mingw*)
     DSO_CFLAGS=
     DSO_PIC_CFLAGS=
     DLL_SUFFIX=.dll
     RC=rc.exe
     MC=mc.exe
-    # certain versions of cygwin's makedepend barf on the
-    # #include <string> vs -I./dist/include/string issue so don't use it
-    MOZ_NATIVE_MAKEDEPEND=
     if test -n "$GNU_CC"; then
         CC="$CC -mwindows"
         CXX="$CXX -mwindows"
         CPP="$CPP -mwindows"
         CFLAGS="$CFLAGS -mms-bitfields"
         CXXFLAGS="$CXXFLAGS -mms-bitfields"
         DSO_LDOPTS='-shared'
         MKSHLIB='$(CXX) $(DSO_LDOPTS) -o $@'
@@ -1987,17 +1982,16 @@ ia64*-hpux*)
 *-solaris*)
     AC_DEFINE(SOLARIS)
     TARGET_NSPR_MDCPUCFG='\"md/_solaris.cfg\"'
     if test -z "$CROSS_COMPILE" && pkginfo -q SUNWpr && pkginfo -q SUNWprd; then
        NO_NSPR_CONFIG_SYSTEM_LDFLAGS="-L/usr/lib/mps -R/usr/lib/mps -lnspr4"
        NO_NSPR_CONFIG_SYSTEM_CFLAGS="-I/usr/include/mps"
        NO_NSPR_CONFIG_SYSTEM_VERSION=["`pkgparam SUNWpr SUNW_PRODVERS | sed -e 's/^[1-9][0-9]*\.[0-9][0-9]*$/&.0/'`"]
     fi
-    MOZ_NATIVE_MAKEDEPEND=
     MOZ_FIX_LINK_PATHS=
     # $ORIGIN/.. is for shared libraries under components/ to locate shared
     # libraries one level up (e.g. libnspr4.so)
     if test "$SOLARIS_SUNPRO_CC"; then
        LDFLAGS="$LDFLAGS -z ignore -R '\$\$ORIGIN:\$\$ORIGIN/..' -z lazyload -z combreloc -z muldefs"
        LIBS="-lCrun -lCstd -lc $LIBS"
        AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
        CFLAGS="$CFLAGS -xlibmieee -xstrconst -xbuiltin=%all -D__FUNCTION__=__func__"
@@ -4060,74 +4054,39 @@ MOZ_EXPAND_LIBS
 
 dnl ========================================================
 dnl =
 dnl = Build depencency options
 dnl =
 dnl ========================================================
 MOZ_ARG_HEADER(Build dependencies)
 
-dnl ========================================================
-dnl = Do not auto generate dependency info
-dnl ========================================================
-MOZ_AUTO_DEPS=1
-MOZ_ARG_DISABLE_BOOL(auto-deps,
-[  --disable-auto-deps     Do not automatically generate dependency info],
-    MOZ_AUTO_DEPS=,
-    MOZ_AUTO_DEPS=1)
-
-if test -n "$MOZ_AUTO_DEPS"; then
-dnl ========================================================
-dnl = Use mkdepend instead of $CC -MD for dependency generation
-dnl ========================================================
-_cpp_md_flag=
-MOZ_ARG_DISABLE_BOOL(md,
-[  --disable-md            Do not use compiler-based dependencies ],
-  [_cpp_md_flag=],
-  [_cpp_md_flag=1],
-  [dnl Default is to turn on -MD if using GNU-compatible compilers
-   if test "$GNU_CC" -a "$GNU_CXX"; then
-     _cpp_md_flag=1
-   fi
-  dnl Default is to use -xM if using Sun Studio on Solaris
-   if test "$SOLARIS_SUNPRO_CC"; then
-     _cpp_md_flag=1
-   fi])
-if test "$_cpp_md_flag"; then
-  COMPILER_DEPEND=1
+if test "$GNU_CC" -a "$GNU_CXX"; then
   _DEPEND_CFLAGS='$(filter-out %/.pp,-MD -MF $(MDDEPDIR)/$(@F).pp)'
-  dnl Sun Studio on Solaris use -xM instead of -MD, see config/rules.mk
-  if test "$SOLARIS_SUNPRO_CC"; then
-    _DEPEND_CFLAGS=
-  fi
+dnl Sun Studio on Solaris use -xM instead of -MD, see config/rules.mk
+elif test "$SOLARIS_SUNPRO_CC"; then
+  _DEPEND_CFLAGS=
 else
-  COMPILER_DEPEND=
   dnl Don't override this for MSVC
   if test -z "$_WIN32_MSVC"; then
     _USE_CPP_INCLUDE_FLAG=
     _DEFINES_CFLAGS='$(ACDEFINES) -D_JS_CONFDEFS_H_ -DMOZILLA_CLIENT'
     _DEFINES_CXXFLAGS='$(ACDEFINES) -D_JS_CONFDEFS_H_ -DMOZILLA_CLIENT'
   else
     echo '#include <stdio.h>' > dummy-hello.c
     changequote(,)
     CL_INCLUDES_PREFIX=`${CC} -showIncludes -c -Fonul dummy-hello.c 2>&1 | sed -ne 's/^\([^:]*:[^:]*:\).*stdio.h$/\1/p'`
     changequote([,])
     if test -z "$CL_INCLUDES_PREFIX"; then
         AC_MSG_ERROR([Cannot find cl -showIncludes prefix.])
     fi
     AC_SUBST(CL_INCLUDES_PREFIX)
     rm -f dummy-hello.c
-    COMPILER_DEPEND=1
   fi
 fi
-fi # MOZ_AUTO_DEPS
-MDDEPDIR='.deps'
-AC_SUBST(MOZ_AUTO_DEPS)
-AC_SUBST(COMPILER_DEPEND)
-AC_SUBST(MDDEPDIR)
 
 dnl ========================================================
 dnl = Link js shell to system readline
 dnl ========================================================
 MOZ_ARG_ENABLE_BOOL(readline,
 [  --enable-readline       Link js shell to system readline library],
     JS_WANT_READLINE=1,
     JS_WANT_READLINE= )
@@ -4273,18 +4232,16 @@ COMPILE_CFLAGS=`echo \
 	$_DEPEND_CFLAGS \
     $COMPILE_CFLAGS`
 
 COMPILE_CXXFLAGS=`echo \
     $_DEFINES_CXXFLAGS \
 	$_DEPEND_CFLAGS \
     $COMPILE_CXXFLAGS`
 
-AC_SUBST(MOZ_NATIVE_MAKEDEPEND)
-
 AC_SUBST(NSPR_CFLAGS)
 AC_SUBST(NSPR_LIBS)
 AC_SUBST(MOZ_NATIVE_NSPR)
 
 OS_CFLAGS="$CFLAGS"
 OS_CXXFLAGS="$CXXFLAGS"
 OS_CPPFLAGS="$CPPFLAGS"
 OS_COMPILE_CFLAGS="$COMPILE_CFLAGS"
@@ -4451,22 +4408,16 @@ MAKEFILES="
 "
 
 if test "$JS_NATIVE_EDITLINE"; then
   MAKEFILES="$MAKEFILES
     editline/Makefile
   "
 fi
 
-if test ! "$COMPILER_DEPEND" -a ! "$MOZ_NATIVE_MAKEDEPEND"; then
-  MAKEFILES="$MAKEFILES
-    config/mkdepend/Makefile
-  "
-fi
-
 if test "$ENABLE_TESTS"; then
   MAKEFILES="$MAKEFILES
     jsapi-tests/Makefile
     tests/Makefile
   "
 fi
 
 echo $MAKEFILES > unallmakefiles
--- a/toolkit/mozapps/installer/packager.mk
+++ b/toolkit/mozapps/installer/packager.mk
@@ -655,17 +655,16 @@ NO_PKG_FILES += \
 	nsinstall \
 	viewer \
 	TestGtkEmbed \
 	codesighs* \
 	elf-dynstr-gc \
 	mangle* \
 	maptsv* \
 	mfc* \
-	mkdepend* \
 	msdump* \
 	msmap* \
 	nm2tsv* \
 	nsinstall* \
 	res/samples \
 	res/throbber \
 	shlibsign* \
 	ssltunnel* \