XFree86 host.def

Bruce Dubbs bdubbs at swbell.net
Wed Apr 24 22:38:30 PDT 2002

I've been looking at the suggested host.def file and I want to put some 
of it into the X section of the book, however I have comments that I'd 
like to discuss before I do it.  My comments are in [brackets].  There 
are probably changes due to the release of 4.2.  Note that version 4.2 
builds fine without any host.def file.  I welcome discussion.
   -- Bruce

/* System Related Information == If you read and configure only one
  * section then it should be this one.  The defaults are set for a
  * i686 and higher.  You will need to alter them for your system 

#define DefaultGcc2i386Opt \
         -O3 -fomit-frame-pointer -fno-strict-aliasing -mcpu=i686 \
         -march=i686 -fno-common
[-mcpu is redundant.  -march implies -mcpu.
  -O3 is too aggressive for the book.  Use the default of -O2.
  -fno-strict-aliasing is the default.
   The GCC info says
      Allocate even uninitialized global variables in the bss section of
      the object file, rather than generating them as common blocks.
      This has the effect that if the same variable is declared (without
      `extern') in two different compilations, you will get an error
      when you link them.  The only reason this might be useful is if
      you wish to verify that the program will work on other systems
      which always work this way.

#define HasMTRRSupport          YES     /* Enabled in kernel see kernel 
docs */
[This is the default for Linux systems > 2.0.something]

#define HasMMXSupport           NO      /* Any i586 or above */
[This is figured out automatically]

#define HasKatmaiSupport        NO      /* PIII SSE instuctions */
[Figured automatically]

#define Has3DNowSupport         NO      /* AMD instructions */
[figured automatically]

#define XInputDrivers           mouse void
[Is this done to save some build time? The other devices look pretty rare.]

#define LinuxMachineDefines  -D__i686 -D__i686__ -D__pentiumpro 

[Why should we do this?  The -march switch above should take care of it.]


#define XF86CardDrivers   mga glint nv tga s3virge rendition \
                           cirrus vmware tseng chips apm \
                           fbdev i128 \
                           ati AgpGartDrivers DevelDrivers ark cyrix \
                           vesa vga XF86OSCardDrivers
[This should be omitted and left as default.  More info about drivers 
will be put in DRI section.]

#define UseMatroxHal            YES /* Matrox G400+ needs this enabled
[Not in the main section.  Will be discussed in the DRI section.]



#define BuildFontServer         YES     /* Need for GhostScript Print 
Server */
[This is the default]

#define BuildFreetype2Library   YES     /* For using TrueType Fonts */
[Built by default]

#define SharedLibFont           YES     /* Needed for Truetype */
[Not sure about this one, but freetype works without it]

#define CompressAllFonts        YES
[Built by default]

#define GzipFontCompression     YES
#define SharedLibFont           YES
[Not sure about these]

#define DefaultFontPath         $(FONTDIR)/misc/,$(FONTDIR)/75dpi/,\
[This should be left out.  We will reset it in the config file.]

[Turning off the extra fonts is good.]
/* INTERNATIONAL FONTS.  Change to YES if you need any of them 

#define BuildCyrillicFonts      NO
#define BuildArabicFonts        NO
#define BuildISO8859_6Fonts     NO
#define BuildGreekFonts         NO
#define BuildISO8859_7Fonts     NO
#define BuildHebrewFonts        NO
#define BuildISO8859_8Fonts     NO
#define BuildKOI8_RFonts        NO
#define BuildJapaneseFonts      NO
#define BuildJISX0201Fonts      NO
#define BuildKoreanFonts        NO
#define BuildChineseFonts       NO

[Why do we put these in?  They are all no by default.  Providing the 
builder options?]

#define BuildLinuxDocHtml       NO      /* X Docs in Html format */
#define BuildLinuxDocPS         NO      /* X Docs in PostScript format */
#define BuildAllSpecsDocs       NO      /* Various docs */
#define BuildHtmlManPages       NO

[This is good.  I belive it shows up in the log.]
/* Linux Distribution Information - Not essential that it is totally 
right */

#define LinuxDistribution       LFS
#define LinuxCLimbMajorVersion  3
#define LinuxCLimbMinorVersion  1
#define LinuxCLimbTeenyVersion  0

/* GENERAL SETTINGS: You generally want to leave these alone when
  * building X on an LFS system 

#define GccWarningOptions       -pipe
[-pipe isn't a warning.  Not sure where to put it.  It does speed up 

#define TermcapLibrary          -lncurses

#define XprtServer              YES /* Needed by realplayer for some 
reason */
[Don't know about this one]

#define XnestServer             YES

#define XAppLoadDir             EtcX11Directory/app-defaults
[is this necessary?]

#define VarLibDir               /var/lib
[I believe this is the default]

#define XFree86Devel            YES
[shouldn't be by default]

#define FSUseSyslog             YES

#define ThreadedX               YES

#define HasZlib                 YES

#define HasNCurses              YES
[built by default]

#define HasPam                  NO

#define SystemManDirectory      /usr/share/man

#define HasLibCrypt             YES

#define InstallXinitConfig      YES

#define InstallXdmConfig        YES

#define DebuggableLibraries     YES /* Avoids a make install crash */
[Not needed - no crash in version 4.2]

#define ForceNormalLib          YES
[This is to build static libraries in addition to dynamic.  Do we need 
to do this?]

#define BuildSpecsDocs          NO

[everything below here will be handled in dri section]
#define BuildXF86DRI            YES     /* DRI of course. */
#if BuildXF86DRI
         #define BuildLibGlxWithoutPIC   YES     /* Builds faster libs */
#define SharedLibGlu            YES
#define NormalLibGlu            YES
#define InstallFSConfig         YES
#define LinkGLToUsrInclude      NO
#define LinkGLToUsrLib          NO
#define BuildRman               NO

Unsubscribe: send email to listar at linuxfromscratch.org
and put 'unsubscribe blfs-dev' in the subject header of the message

More information about the blfs-dev mailing list