CVS: moonbase/zbeta/xfree86-dev BUILD, NONE, 1.1 CONFIGURE, NONE, 1.1 CONFLICTS, NONE, 1.1 DEPENDS, NONE, 1.1 DETAILS, NONE, 1.1 POST_INSTALL, NONE, 1.1 xsession, NONE, 1.1

Florin Braescu florin at lunar-linux.org
Wed Dec 3 20:22:00 GMT 2003


Update of /var/cvs/lunar/moonbase/zbeta/xfree86-dev
In directory dbguin.lunar-linux.org:/tmp/cvs-serv7857

Added Files:
	BUILD CONFIGURE CONFLICTS DEPENDS DETAILS POST_INSTALL 
	xsession 
Log Message:
a developement snapshot of xfree86. it is intended to be compiled undex 2.6 kernels (although it will work under the others too).


--- NEW FILE: BUILD ---
install_drm()  {

  DRM_DIR="programs/Xserver/hw/xfree86/os-support/linux/drm/kernel"
  DRM_DEST="/lib/modules/`uname -r`/kernel/drivers"
  mkdir   -p                $DRM_DEST
  cp          $DRM_DIR/*.o  $DRM_DEST  2>/dev/null
  depmod  -a
  true

}

if [ -e /etc/X11/xinit/xinitrc ]; then
   cp /etc/X11/xinit/xinitrc /etc/X11/xinit/xinitrc.orig
   echo "Your master xinitrc file has been backed up as /etc/X11/xinit/xinitrc.orig"
fi

if    [  -f  $CONFIG_CACHE/host.def  ]
then  cp     $CONFIG_CACHE/host.def  config/cf/host.def
fi

message  "Building XFree86 takes a very long time."


( 

  echo  "#define  InstallXdmConfig     NO"  >>  config/cf/site.def
  echo  "#define  InstallXinitConfig  YES"  >>  config/cf/site.def

  export CFLAGS=`echo $CFLAGS | sed s/-funroll-loops//`
  export CFLAGS=`echo $CFLAGS | sed s/-ffast-math//`
  export CXXFLAGS=`echo $CXXFLAGS | sed s/-funroll-loops//`
  export CXXFLAGS=`echo $CXXFLAGS | sed s/-ffast-math//`
  export CPPFLAGS=`echo $CPPFLAGS | sed s/-funroll-loops//`
  export CPPFLAGS=`echo $CPPFLAGS | sed s/-ffast-math//`

  if  module_installed  Linux-PAM
  then  echo  "#define  HasPam  YES"  >>  config/cf/site.def
  fi                                    &&

  make World                            &&
  prepare_install                       &&
  cd $SOURCE_DIRECTORY                  &&
  make  install                         &&
  make  install.man                     &&
        install_drm                     &&
  mkdir  -p  /usr/X11R6/include/GL      &&
  rm     -f  /usr/X11R6/lib/libz.a      &&
  rm     -f /usr/X11R6/include/zlib.h   &&
  rm     -f /usr/X11R6/include/zconf.h  &&

  if  [  !  -e                      /etc/skel/.xsession  ];  then
    cp  $SCRIPT_DIRECTORY/xsession  /etc/skel/.xsession
  fi  &&

  if  [  !  -e                    /usr/bin/X11  ];  then
    ln      -sf   /usr/X11R6/bin  /usr/bin/X11
  fi  &&

  if  [  !  -e          /usr/X11  ];  then
    ln      -sf  X11R6  /usr/X11
  fi  &&

  if  [  !  -e                         /usr/include/X11  ];  then
    ln      -sf  ../X11R6/include/X11  /usr/include/X11
  fi  &&

  if  [  !  -e                     /usr/lib/X11  ];  then
    ln      -sf  ../X11R6/lib/X11  /usr/lib/X11
  fi  &&

  if  [  !  -e                     /usr/lib/libMesaGLU.so ];  then
    ln      -sf  /usr/X11R6/lib/libGLU.so.1.3 /usr/lib/libMesaGLU.so
  fi  &&

  if  [  !  -e                /usr/X11R6/lib/libMesaGL.so ];  then
    ln      -sf  /usr/X11R6/lib/libGL.so.1.2 /usr/X11R6/lib/libMesaGL.so
  fi


) > $C_FIFO 2>&1

--- NEW FILE: CONFIGURE ---
optimize $GCCVER 
  CFLAGS=`echo $CFLAGS | sed s/-funroll-loops//`
  CFLAGS=`echo $CFLAGS | sed s/-ffast-math//`
echo $CFLAGS

build_checklist()  {

  STATUS=$1
  LABEL=$2
  shift  2

  for  ITEM  in  $@;  do
    echo  $ITEM  $LABEL  $STATUS
  done

}


select_card_drivers()  {

  TITLE="Graphics Card Driver Selection Menu"
  HELP="Key:  [X] = on, [ ] = off"

  CHECKLIST="`build_checklist ON   Graphics   $ON_CARD_DRIVERS`
             `build_checklist OFF  Graphics  $OFF_CARD_DRIVERS`"

  if  XF86CardDrivers=`dialog  --backtitle  "$BACKTITLE"  \
                               --title      "$TITLE"      \
                               --stdout                   \
                               --separate-output          \
                               --checklist  "$HELP"       \
                               18 55 10                   \
                               $CHECKLIST`
  then
     ON_CARD_DRIVERS=$XF86CardDrivers
    OFF_CARD_DRIVERS=$CARD_DRIVERS

    for  ITEM  in  $ON_CARD_DRIVERS;  do
      OFF_CARD_DRIVERS=`echo  $OFF_CARD_DRIVERS  |  sed  s/$ITEM//`
    done
  fi

}


select_dridrivers()  {

  TITLE="DRI Driver Selection Menu"
  HELP="Not all XFree86 supported graphics cards have DRI.
Key:  [X] = on, [ ] = off"

    CHECKLIST="`build_checklist  ON   DRI   $ON_DRI`
               `build_checklist  OFF  DRI  $OFF_DRI`"

  if  DriDrivers=`dialog  --backtitle  "$BACKTITLE"  \
                          --title      "$TITLE"      \
                          --stdout                   \
                          --separate-output          \
                          --checklist  "$HELP"       \
                          18 55 10                   \
                          $CHECKLIST`
  then
     ON_DRI=$DriDrivers
    OFF_DRI=$DRI

    for  ITEM  in  $ON_DRI;  do
      OFF_DRI=`echo  $OFF_DRI  |  sed  s/$ITEM//`
    done
  fi

}


select_input_drivers()  {

  TITLE="Input Driver Selection Menu"
  HELP="Key:  [X] = on, [ ] = off"

  CHECKLIST="`build_checklist  ON   Input   $ON_INPUT_DRIVERS`
             `build_checklist  OFF  Input  $OFF_INPUT_DRIVERS`"

  if  XInputDrivers=`dialog  --backtitle  "$BACKTITLE"  \
                             --title      "$TITLE"      \
                             --stdout                   \
                             --separate-output          \
                             --checklist  "$HELP"       \
                             18 55 10                   \
                             $CHECKLIST`
  then
     ON_INPUT_DRIVERS=$XInputDrivers
    OFF_INPUT_DRIVERS=$INPUT_DRIVERS

    for  ITEM  in  $ON_INPUT_DRIVERS;  do
      OFF_INPUT_DRIVERS=`echo  $OFF_INPUT_DRIVERS  |  sed  s/$ITEM//`
    done
  fi

}


initialize()  {

  BACKTITLE="lunar XFree86 host.def Configuration Menu"

   ON_CARD_DRIVERS="vga vesa v4l"
  OFF_CARD_DRIVERS="mga glint nv tga s3virge sis s3 rendition neomagic i740
                    tdfx savage cirrus vmware tseng trident chips apm
                    GlideDriver fbdev i128 ati ark cyrix 
                    siliconmotion i810 imstt nsc tga"
      CARD_DRIVERS="$ON_CARD_DRIVERS  $OFF_CARD_DRIVERS"


   ON_DRI=""
  OFF_DRI="gamma TdfxDriDriver mga r128 i810 radeon sis"
      DRI="$ON_DRI  $OFF_DRI"


   ON_INPUT_DRIVERS="mouse keyboard"
  OFF_INPUT_DRIVERS="dynapro elographics magellan microtouch mutouch 
                     spaceorb wacom void citron digitaledge dmc elographics
                     fpit hyperpen js_x kbd palmax penmount summa 
                     tek4957 ur98"
      INPUT_DRIVERS="$ON_INPUT_DRIVERS  $OFF_INPUT_DRIVERS"


  YES_FONT_OPTIONS="MakeLocalFontDir Build75DpiFonts Build100DpiFonts BuildFontServer"
   NO_FONT_OPTIONS="BuildCIDFonts      BuildCyrillicFonts
                    BuildLatin2Fonts   UseKoi8RForCyrillic
		    BuildArabicFonts   BuildISO8859_6Fonts
		    BuildGreekFonts    BuildISO8859_7Fonts
		    BuildHebrewFonts   BuildISO8859_8Fonts
		    BuildKOI8_RFonts   BuildJapaneseFonts
		    BuildJISX0201Fonts BuildKoreanFonts
		    BuildChineseFonts  InstallFSConfig   
                    SharedLibFont      CompressAllFonts  
                    GzipFontCompression"
      FONT_OPTIONS="$YES_FONT_OPTIONS  $NO_FONT_OPTIONS"

  YES_MISC_OPTIONS="HasShm BuildGLULibrary BuildGLXLibrary BuildGlxExt BuildDBE BuildRECORD InstallXinitConfig InstallXdmConfig XprtServer ThreadedX"
   NO_MISC_OPTIONS="BuildServersOnly  BuildPexExt  XnestServer
                    LinuxFBDevSupport XVirtualFramebufferServer
                    BuildXF86DRI BuildXF86DRM"
      MISC_OPTIONS="$YES_MISC_OPTIONS  $NO_MISC_OPTIONS"

}


generate_host_def()  {


  echo  "#define DefaultCCOptions      $CFLAGS $LDFLAGS"
  echo  "#define DefaultGcc2i386Opt    $CFLAGS $LDFLAGS"
  echo  "#define LibraryCDebugFlags    $CFLAGS $LDFLAGS"
  echo  "#define DefaultCDebugFlags    $CFLAGS $LDFLAGS"
  echo  "#define OptimizedCDebugFlags  $CFLAGS $LDFLAGS"
  echo  "#define HasFreetype2                 YES"

  if [[ $COPT != "" ]]; then
    echo "#define GccWarningOptions $COPT"
  fi

  if [[ -f /proc/mtrr ]]; then
    echo "#define HasMTRRSupport         YES"
  fi

  case $CPU in
  Pentium*)echo "#define HasMMXSupport   YES"
           echo "#define HasSSESupport   YES"
	   echo "#define MesaUseKatmai   YES"
#           if [[ CPU == "Pentium4" ]]; 
#             echo "#define HasSSE2Support YES"
#           fi
           ;;
   Athlon*)echo "#define HasMMXSupport   YES"
           echo "#define Has3DNowSupport YES"
	   echo "#define MesaUse3DNow    YES"
           ;;
  esac 

  if  [  -z  "$XF86CardDrivers"  ];  then
    XF86CardDrivers="$ON_CARD_DRIVERS"
  fi

  XF86CardDrivers=`echo  $XF86CardDrivers  |  tr  '
' ' '`
  echo  "#define XF86CardDrivers $XF86CardDrivers"


  if  [  -z  "$DriDrivers"  ];  then
    echo  "#define DriDrivers /**/"
  else
    DriDrivers=`echo  $DriDrivers  |  tr  '
' ' '`
    echo  "#define DriDrivers $DriDrivers"
  fi

  if  [  -z  "$XInputDrivers"  ];  then
    echo  "#define XInputDrivers mouse"
  else
    XInputDrivers=`echo  $XInputDrivers  |  tr  '
' ' '`
    echo  "#define XInputDrivers $XInputDrivers"
  fi

  for  ITEM  in   $YES_FONT_OPTIONS;  do
    echo  "#define $ITEM  YES"
  done

  for  ITEM  in  $NO_FONT_OPTIONS;  do
    echo  "#define $ITEM  NO"
  done

  if module_installed freetype2; then
    echo "#define HasFreetype2              YES"
    echo "#define BuildFreetype2Library     NO"
    echo "#define Freetype2Dir              /usr"
  fi

  for  ITEM  in   $YES_MISC_OPTIONS;  do
    echo  "#define $ITEM  YES"
  done

  for  ITEM  in  $NO_MISC_OPTIONS;  do
    echo  "#define $ITEM  NO"
  done

}


save_host_def()  {


  TARGET1="$CONFIG_CACHE/host.def"

  dialog  --backtitle  "$BACKTITLE"                        \
          --msgbox     "Saving Configuration to $TARGET1"  \
          6 40

  generate_host_def  >  "$TARGET1"

}


select_font_options() {

  TITLE="Select Font Options"
  CHECKLIST="`build_checklist  ON   Option  $YES_FONT_OPTIONS`
             `build_checklist  OFF  Option   $NO_FONT_OPTIONS`"
  HELP="Key:  [X] = on, [ ] = off"

  if  ON_FONT_OPTIONS=`dialog  --backtitle  "$BACKTITLE"  \
                               --title      "$TITLE"      \
                               --stdout                   \
                               --separate-output          \
                               --checklist  "$HELP"       \
                               18 55 10                   \
                              $CHECKLIST`
  then
    YES_FONT_OPTIONS=$ON_FONT_OPTIONS
     NO_FONT_OPTIONS=$FONT_OPTIONS

    for  ITEM  in  $YES_FONT_OPTIONS;  do
      NO_FONT_OPTIONS=`echo  $NO_FONT_OPTIONS  |  sed  s/$ITEM//`
    done
  fi

}  


select_misc_options() {

  TITLE="Select Misc Options"
  CHECKLIST="`build_checklist  ON   Option  $YES_MISC_OPTIONS`
             `build_checklist  OFF  Option   $NO_MISC_OPTIONS`"
  HELP="Key:  [X] = on, [ ] = off"

  if  ON_MISC_OPTIONS=`dialog  --backtitle  "$BACKTITLE"  \
                               --title      "$TITLE"      \
                               --stdout                   \
                               --separate-output          \
                               --checklist  "$HELP"       \
                               18 55 10                   \
                               $CHECKLIST`
  then
    YES_MISC_OPTIONS=$ON_MISC_OPTIONS
     NO_MISC_OPTIONS=$MISC_OPTIONS

    for  ITEM  in  $YES_MISC_OPTIONS;  do
      NO_MISC_OPTIONS=`echo  $NO_MISC_OPTIONS  |  sed  s/$ITEM//`
    done
  fi

}


configure_host_def()  {

  initialize

  while  

    COMMAND=`dialog  --backtitle  "$BACKTITLE"                        \
                     --stdout                                         \
                     --title  "Main Menu"                             \
                     --default-item  $COMMAND                         \
                     --nocancel                                       \
                     --menu                                           \
                     ""                                               \
                     18 55 10                                         \
                     "XF86CardDrivers"  "Select Video Card Drivers"   \
                     "DriDrivers"       "Select Direct DRI Drivers"   \
                     "XInputDrivers"    "Select Input Drivers"        \
                     "Fonts"            "Select Font Options"         \
                     "Misc"             "Set other Options"           \
                     "Save"             "Save current configuration"  \
                     "Edit"             "Edit host.def"               \
                     "Exit"             "Done here.  Start building"`
  do

    case  $COMMAND  in
                 Exit)  break                        ;;
                 Save)  save_host_def                ;;
                 Edit)  [  -n   "$EDITOR"  ]         &&
                        $EDITOR  /etc/lunar/local/host.def  ||
                        nano     /etc/lunar/local/host.def  ;;
      XF86CardDrivers)  select_card_drivers          ;;
           DriDrivers)  select_dridrivers            ;;
        XInputDrivers)  select_input_drivers         ;;
                Fonts)  select_font_options          ;;
                 Misc)  select_misc_options          ;;
    esac
  done

}

message  "${MESSAGE_COLOR}**WARNING** If you are running this inside a" \
         "existing X server installation I would suggest that you close" \
         "X and run this from the Linux Console"
message  "If you have any problems with installation please remove" \
         "your existing xfree86 module and remove /usr/X11R6"
message  "${MESSAGE_COLOR}The DRI/DRM in xfree86 4.3.0 is not"  \
         "compatibile with the DRI/DRM in linux-2.4.20."
message  "If you use DRI/DRM please enable DRM in the"     \
         "xfree86 configuration"
message  "and disable it in the linux configuration.${DEFAULT_COLOR}"


if    [  -f  $CONFIG_CACHE/host.def  ]
then  message  "Reconfiguration is optional."
fi

if    query  "Configure host.def?"  n
then  configure_host_def
fi

--- NEW FILE: CONFLICTS ---
conflicts  xfree86

--- NEW FILE: DEPENDS ---
depends  perl    &&
depends  zlib    &&
depends  libpng  &&
depends  freetype2
#optional_depends "Linux-PAM" "" "" "for Linux-PAM Support"

--- NEW FILE: DETAILS ---
          MODULE=xfree86-dev
         VERSION=4.3.99.16
          SOURCE=XFree86-$VERSION.tar.bz2
         SOURCE9=xft.pc
           FUZZY="off"
   SOURCE_DIRECTORY=$BUILD_DIRECTORY/xc
   SOURCE_URL[0]=ftp://ftp.xfree86.org/pub/XFree86/develsnaps/$SOURCE
    SOURCE_VFY=md5:9060c02f9e07620b8595e4d3da77a4b3
        WEB_SITE=http://www.xfree86.org
         ENTERED=20031203
         UPDATED=20031203
	 
      SHORT="xfree86 is a free implementation of the X Window System."
cat << EOF
What is XFree86?
The XFree86 Project, Inc is an organisation which produces XFree86, a
freely redistributable open-source implementation of the X Window System
that runs on UNIX(R) and UNIX-like (like Linux, the BSDs, Mac OS X (aka
Darwin) and Solaris x86 series) operating systems and OS/2.
XFree86 is the underlying software that is between the hardware and
graphical user interface (aka gui) that people see and use. If you are
using KDE, GNOME, Enlightenment, Blackbox, AfterStep, twm or fvwm then
you are already using and running XFree86 as these run as our clients.
Traditionally, The XFree86 Project has focused on Intel x86-based
platforms, which is where the 86 in our name comes from, but our
current release supports other platforms like the Alpha, PowerPC, Sparc
and in-the-works MIPS CPU families.
Our goal at XFree86 is to have X run on every platform available,
including those we do not currently support, as the best windowing
system available on that platform.

This a developement snapshot for testing purposes. It can be compiled 
under linux-test kernels, with kernel-headers for that kernels too.
EOF

--- NEW FILE: POST_INSTALL ---
rm  -f  $BOOST_LOCK
if    module_installed  NVIDIA;  then  lin  NVIDIA;  fi
if    module_installed  pango;  then  lin  -c  pango;  fi 
if    module_installed  fontconfig; then lin -c fontconfig; fi

if ! grep -q '. /etc/profile' /etc/X11/xdm/Xsession; then
  sedit 2s:#:.\ /etc/profile: /etc/X11/xdm/Xsession
fi

# run xfs only on unix socket:
if [ -f /etc/X11/fs/config ] ; then
  if ! grep -q "no-listen = tcp" /etc/X11/fs/config ; then
    cat >> /etc/X11/fs/config <<EOF

# more secure: do not listen on tcp ports
no-listen = tcp

EOF
  fi
fi

if   !   [  -d  /usr/lib/pkgconfig  ]
then  mkdir -p /usr/lib/pkgconfig
fi 

ln -sf /usr/X11R6/lib/pkgconfig/xft.pc /usr/lib/pkgconfig        &&
ln -sf /usr/X11R6/lib/pkgconfig/fontconfig.pc /usr/lib/pkgconfig &&

message "Running fc-cache please be patient" &&
/usr/X11R6/bin/fc-cache -f 

cp $SOURCE_CACHE/$SOURCE9 /usr/X11R6/lib/pkgconfig/xft.pc

--- NEW FILE: xsession ---
#!/bin/sh

if    [  -e /usr/bin/xscreensaver  ];  then  
                     xscreensaver -no-splash &
fi

if    [  -x /usr/bin/enlightenment  ]
then  exec           enlightenment

elif  [  -x /opt/lunar/kde/3/bin/startkde  ]
then  exec  /opt/lunar/kde/3/bin/startkde

elif  [  -x /opt/lunar/kde/2/bin/startkde  ]
then  exec  /opt/lunar/kde/2/bin/startkde

elif  [  -x /usr/bin/wmaker  ]
then  [  -d ~/GNUstep        ]  ||
                     wmaker.inst
      exec           wmaker

elif  [  -x /usr/bin/icewm  ]
then  exec           icewm

elif  [  -x /usr/bin/blackbox  ]
then  exec           blackbox

elif  [  -x /usr/bin/fvwm2  ]
then  exec           fvwm2

fi




More information about the Lunar-commits mailing list