That question is more appropriately answered on the xfree86@xxxxxxxxxxx mailing list. Now with that out of the way; the answer is that you need to set the configure flags in the host.def and site.def files. Make sure that you have thoroughly read the configuration help files to determine what flags to set for your particular architecture, os, and compiler. I believe that the build script does not detect gcc3 properly, and also fails to enable some things for linux kernels above 2.2. All this may be fixed by setting the proper flags. For reference, my config/cf/site.def and config/cf/host.def files are listed below. Use these only as a reference, they may build undesirable components, disable some desirable ones, and enable things not specific to your os/architecture. /*site.def (almost stock)*/ XCOMM site: $TOG: site.sample /main/r64_final/1 1998/02/05 16:28:49 kaleb $ /*************************************************************************** * * * SITE-SPECIFIC DEFINITIONS * * * * This file contains two halves, one included before the vendor-specific * * configuration file (.cf file), and one included after the .cf file. * * The before-half should be protected by #ifdef BeforeVendorCF, and the * * after-half should be protected by #ifdef AfterVendorCF. * * * * The before-half should only set things that the .cf file depends on. * * For the .cf files shipped in this release, the main variables in this * * category are HasGcc, HasGcc2, HasCplusplus, OSMajorVersion, * * OSMinorVersion, and OSTeenyVersion. * * * * The after-half should contain all other definitions. For example, * * place your ProjectRoot definition here. * * * * OS Major and Minor version numbers should be changed directly in the * * .cf file, not overridden in site.def. * * * ***************************************************************************/ XCOMM site: $XFree86: xc/config/cf/site.def,v 3.24 2000/06/25 20:17:29 dawes Exp $ /* if you want host-specific customization, this is one way to do it */ /* #ifndef SiteIConfigFiles #define SiteIConfigFiles $(IRULESRC)/host.def #define LocalConfigFiles host.def #endif */ #ifdef BeforeVendorCF /* * Include this for easy XFree86 customisations */ #ifndef SiteIConfigFiles #define SiteIConfigFiles $(IRULESRC)/xf86site.def $(IRULESRC)/host.def #endif #include <host.def> #include <xf86site.def> /* On systems where cpp doesn't correctly expand macros in include directives * the two following macros need to be defined directly (where "X11" is * really whatever the TopLevelProject macro is defined to be). */ # if defined(AIXArchitecture) || defined(SVR4Architecture) || \ defined(SCOArchitecture) || defined(Win32Architecture) || \ defined(UXPArchitecture) || defined(SunArchitecture) || \ defined(DynixPtxArchitecture) || defined(i386IscArchitecture) # ifndef ProjectRulesFile # define ProjectRulesFile <X11.rules> # endif # ifndef ProjectTmplFile # define ProjectTmplFile <X11.tmpl> # endif # endif /* #ifndef HasGcc2 #define HasGcc2 YES #endif */ #endif /* BeforeVendorCF */ #ifdef AfterVendorCF #ifndef ProjectRoot #define ProjectRoot /usr/X11R6 #endif /* * On some platforms, some things may be installed outside of ProjectRoot * by default. To disable this, uncomment the following line. * #define NothingOutsideProjectRoot YES */ /* * Set EtcX11Directory if you want config file links installed under * ProjectRoot rather than in /etc/X11. See also HasVarDirectory, * UseEtcX11 and UseSeparateConfDir. * #define EtcX11Directory ProjectRoot/etc */ /* Only set HasXdmAuth to YES if you have a Wraphelp.c file. */ /* #define HasXdmAuth YES */ /* #if defined(SunArchitecture) && defined(SparcArchitecture) #define HasCodeCenter YES #ifndef SVR4Architecture #define HasTestCenter YES #endif #endif */ /* #ifdef __hp9000s800 #define HasCodeCenter YES #endif */ /* #if defined(SunArchitecture) && defined(SparcArchitecture) && !defined(SVR4Architecture) #define HasPurify YES #endif */ /* #define HasSentinel YES */ /* #undef DefaultUserPath #define DefaultUserPath /bin:/usr/bin:$(BINDIR):/usr/ucb:/usr/local/bin */ /* You do NOT need SetUID if you only run the server under xdm */ /* You MAY need SetUID if users run the server by hand or under xinit */ /* Consult your system administrator before making the X server setuid */ /* #if defined(SunArchitecture) && OSMajorVersion > 4 #define InstallXserverSetUID YES #endif */ /* You do NOT need SetUID if you only run the server under xdm */ /* You MAY need SetUID if users run the server by hand or under xinit */ /* Consult your system administrator before making the X server setuid */ /* #ifdef XFree86Version #define InstallXserverSetUID YES #endif */ #include <host.def> #endif /* AfterVendorCF */ /*host.def*/ /*Created by Greg 20031107 0 dark 30 */ /*compile environment*/ #define HasGcc3 YES #define LinuxElfDefault YES #define UseElfFormat YES #define StaticNeedsPicForShared YES #define ProjectRoot /usr/X11R6 #define SystemManDirectory /usr/share/man #undef DefaultUserPath #define DefaultUserPath /usr/local/bin:/bin:/usr/bin #undef DefaultSystemPath #define DefaultSystemPath /usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin #define CcCmd gcc -mcpu=i686 -march=i686 -O3 -ffast-math -fno-strength-reduce -pipe #define AsCmd CcCmd -c -x assembler #define LdCmd ld -melf_i386 #define CplusplusCmd g++ -mcpu=i686 -march=i686 -O3 -ffast-math -fno-strength-reduce -pipe #define PreProcessCmd CcCmd -E #define CppCmd PreProcessCmd #define FortranCmd g77 #define GccWarningOptions -w #define HasCplusplus YES #define HasFortran YES #define HasGnuMake YES /*OS setup*/ #define LinuxDistribution RedNeck #define LinuxDistName "Go Fast Turn Left" #define OSVendor RedNeck #define XVendorString "RedNeck Linux (XFree86 4.3.0.1, patch 2)" #define TkLibDir /usr/lib/tk8.4 #define TkIncDir /usr/include #define TkLibName tk8.4 #define XF86SetupUsesStaticTk NO #define TclLibDir /usr/lib/tcl8.4 #define TclIncDir /usr/include #define TclLibName tcl8.4 #define XF86SetupUsesStaticTcl NO #define BuildLinuxDocText NO #define BuildLinuxDocHtml NO #define BuildLinuxDocPS NO #define BuildAllDocs NO #define BuildHtmlManPages NO #define OSMajorVersion 2 #define OSMinorVersion 4 #define OSTeenyVersion 21 #define LinuxCLibMajorVersion 6 #define LinuxCLibMinorVersion 2 #define LinuxCLibTeenyVersion 3 #define LinuxBinUtilsMajorVersion 29 #define BinUtilsMajorVersion 29 #define LinuxLocaleDefines /*use (-DX_LOCALE) if OS does not support nls*/ /*System setup*/ #define HasLatex YES #define HasSgmlFmt YES #define HasZlib YES #define HasLibCrypt YES #define HasMTRRSupport YES #define HasX86Support YES #define HasAgpGart YES #define Freetype2BuildDefines -DTT_CONFIG_OPTION_BYTECODE_INTERPRETER #define UsePosix YES #define HasLinuxInput YES #define HasTk YES #define HasTcl YES #define HasZlib YES #define HasPam YES #define HasSharedLibraries YES #define HasShm YES #define HasNCurses YES #define HasGroff YES #define HasLibpng YES #define OptimizedCDebugFlags -O3 /*X setup*/ #define ThreadedX YES #define XtermWithI18N YES #define BuildXF86DRM NO #define BuildXF86DRI YES #define BuildXF86MiscExt YES #define BuildLibraries YES #define BuildLibGlxWithoutPIC NO #define LinkGLToUsrInclude NO #define LinkGLToUsrLib YES #define BuildGLwLibrary YES #define ForceNormalLib YES #define XInputDrivers mouse keyboard void #define HasBlindFaithInUnicode YES #define UseXserverWrapper YES #define UseInternalMalloc NO #define UseMatroxHal NO #define UseConfDirForXkb NO #define UseConfDirForAppDefaults NO #define BuildFonts YES #define BuildSpeedoFonts YES #define BuildCyrillicFonts YES #define BuildBethMarduthoFonts YES #define BuildChineseFonts YES #define BuildJapaneseFonts YES #define BuildPlugin YES #define UseGccMakeDepend YES /*other stuff*/ #define HasLdRunPath NO #define BuildServersOnly NO #define NeedModuleRanlib YES #define ModulesRanlibCmd RanlibCmd #define HaveMatroxHal NO #define UseMatroxHal NO #define XprtServer YES #define XnestServer YES Reality is but a brief respite between my fantasies. -unknown