3 # global environment variables you may set:
4 # CACHE: absolute path to a global autoconf cache
5 # QUIET: hush the configure script noise
6 # CONFFLAGS: flags to pass to all configure scripts
9 if test x
"$NOQUIT" = x1
; then
10 echo "***** $1 failed on $2/$3"
17 if [ -n "$RESUME" ]; then
18 if [ "$RESUME" = "$1/$2" ]; then
20 # Resume build at this module
22 echo "Skipping $1 module component $2..."
26 echo "Building $1 module component $2..."
30 # Special configure flags for certain modules
33 if test "$1" = "xserver" && test -n "$MESAPATH"; then
34 MOD_SPECIFIC
="--with-mesa-source=${MESAPATH}"
36 if test "$1" = "lib" && test "$2" = "libX11" && test x
"$USE_XCB" = xNO
; then
37 MOD_SPECIFIC
="--with-xcb=no"
40 # Use "sh autogen.sh" since some scripts are not executable in CVS
41 sh autogen.sh
--prefix=${PREFIX} ${MOD_SPECIFIC} ${QUIET:+--quiet} \
42 ${CACHE:+--cache-file=}${CACHE} ${CONFFLAGS} || failed autogen
$1 $2
43 ${MAKE} || failed
make $1 $2
44 if test x
"$CLEAN" = x1
; then
45 ${MAKE} clean || failed clean
$1 $2
47 if test x
"$DIST" = x1
; then
48 ${MAKE} dist || failed dist
$1 $2
50 if test x
"$DISTCHECK" = x1
; then
51 ${MAKE} distcheck || failed distcheck
$1 $2
53 $SUDO env LD_LIBRARY_PATH
=$LD_LIBRARY_PATH ${MAKE} install || \
59 # protocol headers have no build order dependencies
86 build proto XF86BigFont
91 build proto XF86VidMode
93 if test x
"$USE_XCB" != xNO
; then
98 # bitmaps is needed for building apps, so has to be done separately first
99 # cursors depends on apps/xcursorgen
100 # xkbdata depends on apps/xkbcomp
107 # All protocol modules must be installed before the libs (okay, that's an
108 # overstatement, but all protocol modules should be installed anyway)
110 # the libraries have a dependency order:
111 # xtrans, Xau, Xdmcp before anything else
112 # fontenc before Xfont
115 # (X11 and SM) before Xt
116 # Xt before Xmu and Xpm
117 # Xext before any other extension library
118 # Xfixes before Xcomposite
119 # Xp before XprintUtil before XprintAppUtil
121 # If xcb is being used for libX11, it must be built before libX11, but after
128 if test x
"$USE_XCB" != xNO
; then
162 build lib XprintAppUtil
175 # Most apps depend at least on libX11.
177 # bdftopcf depends on libXfont
178 # mkfontscale depends on libfontenc and libfreetype
179 # mkfontdir depends on mkfontscale
181 # TODO: detailed breakdown of which apps require which libs
185 build app beforelight
198 build app mkfontscale
203 build app rendercheck
256 build app xphelloworld
257 build app xplsprinters
259 build app xprehashprinterlist
267 build app xsetpointer
277 if test x
"$USE_XCB" != xNO
; then
282 # The server requires at least the following libraries:
288 build_driver_input
() {
293 # Some drivers are only buildable on some OS'es
296 build driver xf86-input-aiptek
297 build driver xf86-input-evdev
298 build driver xf86-input-ur98
304 # And some drivers are only buildable on some CPUs.
306 i
*86* | amd64
* | x86
*64*)
307 build driver xf86-input-vmmouse
313 build driver xf86-input-acecad
314 build driver xf86-input-calcomp
315 build driver xf86-input-citron
316 build driver xf86-input-digitaledge
317 build driver xf86-input-dmc
318 build driver xf86-input-dynapro
319 build driver xf86-input-elo2300
320 build driver xf86-input-elographics
321 build driver xf86-input-fpit
322 build driver xf86-input-hyperpen
323 build driver xf86-input-jamstudio
324 build driver xf86-input-joystick
325 build driver xf86-input-keyboard
326 build driver xf86-input-magellan
327 build driver xf86-input-magictouch
328 build driver xf86-input-microtouch
329 build driver xf86-input-mouse
330 build driver xf86-input-mutouch
331 build driver xf86-input-palmax
332 build driver xf86-input-penmount
333 build driver xf86-input-spaceorb
334 build driver xf86-input-summa
335 build driver xf86-input-tek4957
336 build driver xf86-input-void
339 build_driver_video
() {
343 # Some drivers are only buildable on some OS'es
349 build driver xf86-video-sunffb
355 *NetBSD
* |
*OpenBSD
*)
356 build driver xf86-video-wsfb
357 build driver xf86-video-sunffb
360 build driver xf86-video-sisusb
361 build driver xf86-video-sunffb
362 build driver xf86-video-v4l
368 build driver xf86-video-apm
369 build driver xf86-video-ark
370 build driver xf86-video-ast
371 build driver xf86-video-ati
372 build driver xf86-video-chips
373 build driver xf86-video-cirrus
374 build driver xf86-video-cyrix
375 build driver xf86-video-dummy
376 build driver xf86-video-fbdev
377 # build driver xf86-video-glide
378 build driver xf86-video-glint
379 build driver xf86-video-i128
380 build driver xf86-video-i740
381 build driver xf86-video-intel
382 build driver xf86-video-imstt
383 build driver xf86-video-mga
384 build driver xf86-video-neomagic
385 build driver xf86-video-newport
386 build driver xf86-video-nsc
387 build driver xf86-video-nv
388 build driver xf86-video-rendition
389 build driver xf86-video-s3
390 build driver xf86-video-s3virge
391 build driver xf86-video-savage
392 build driver xf86-video-siliconmotion
393 build driver xf86-video-sis
394 build driver xf86-video-sunbw2
395 build driver xf86-video-suncg14
396 build driver xf86-video-suncg3
397 build driver xf86-video-suncg6
398 build driver xf86-video-sunleo
399 build driver xf86-video-suntcx
400 build driver xf86-video-tdfx
401 build driver xf86-video-tga
402 build driver xf86-video-trident
403 build driver xf86-video-tseng
404 build driver xf86-video-vesa
405 build driver xf86-video-vga
406 build driver xf86-video-via
407 build driver xf86-video-vmware
408 build driver xf86-video-voodoo
411 # The server must be built before the drivers
417 # All fonts require mkfontscale and mkfontdir to be available
419 # The following fonts require bdftopcf to be available:
420 # adobe-100dpi, adobe-75dpi, adobe-utopia-100dpi, adobe-utopia-75dpi,
421 # arabic-misc, bh-100dpi, bh-75dpi, bh-lucidatypewriter-100dpi,
422 # bh-lucidatypewriter-75dpi, bitstream-100dpi, bitstream-75dpi,
423 # cronyx-cyrillic, cursor-misc, daewoo-misc, dec-misc, isas-misc,
424 # jis-misc, micro-misc, misc-cyrillic, misc-misc, mutt-misc,
425 # schumacher-misc, screen-cyrillic, sony-misc, sun-misc and
428 # Within the font module, the util component must be built before the
430 # adobe-100dpi, adobe-75dpi, adobe-utopia-100dpi, adobe-utopia-75dpi,
431 # bh-100dpi, bh-75dpi, bh-lucidatypewriter-100dpi, bh-lucidatypewriter-75dpi,
432 # misc-misc and schumacher-misc
434 # The alias component is recommended to be installed after the other fonts
435 # since the fonts.alias files reference specific fonts installed from the
436 # other font components
440 build font adobe-100dpi
441 build font adobe-75dpi
442 build font adobe-utopia-100dpi
443 build font adobe-utopia-75dpi
444 build font adobe-utopia-type1
445 build font arabic-misc
448 build font bh-lucidatypewriter-100dpi
449 build font bh-lucidatypewriter-75dpi
452 build font bitstream-100dpi
453 build font bitstream-75dpi
454 build font bitstream-speedo
455 build font bitstream-type1
456 build font cronyx-cyrillic
457 build font cursor-misc
458 build font daewoo-misc
463 build font micro-misc
464 build font misc-cyrillic
465 build font misc-ethiopic
466 build font misc-meltho
469 build font schumacher-misc
470 build font screen-cyrillic
473 build font winitzki-cyrillic
474 build font xfree86-type1
478 # makedepend requires xproto
482 build util makedepend
483 build util gccmakedep
487 # xorg-docs requires xorg-sgml-doctools
489 build doc xorg-sgml-doctools
494 echo "Usage: $0 [options] prefix"
495 echo " where options are:"
496 echo " -d : run make distcheck in addition to others"
497 echo " -D : run make dist in addition to others"
498 echo " -c : run make clean in addition to others"
499 echo " -m path-to-mesa-sources-for-xserver : full path to Mesa sources"
500 echo " -n : do not quit after error; just print error message"
501 echo " -s sudo-command : sudo command to use"
504 # Process command line args
540 if test x
"${PREFIX}" = x
; then
545 # Must create local aclocal dir or aclocal fails
546 ACLOCAL_LOCALDIR
="${DESTDIR}${PREFIX}/share/aclocal"
547 $SUDO mkdir
-p ${ACLOCAL_LOCALDIR}
549 # The following is required to make aclocal find our .m4 macros
550 if test x
"$ACLOCAL" = x
; then
551 ACLOCAL
="aclocal -I ${ACLOCAL_LOCALDIR}"
553 ACLOCAL
="${ACLOCAL} -I ${ACLOCAL_LOCALDIR}"
557 # The following is required to make pkg-config find our .pc metadata files
558 if test x
"$PKG_CONFIG_PATH" = x
; then
559 PKG_CONFIG_PATH
=${DESTDIR}${PREFIX}/lib
/pkgconfig
561 PKG_CONFIG_PATH
=${DESTDIR}${PREFIX}/lib/pkgconfig:${PKG_CONFIG_PATH}
563 export PKG_CONFIG_PATH
565 # Set the library path so that locally built libs will be found by apps
566 if test x
"$LD_LIBRARY_PATH" = x
; then
567 LD_LIBRARY_PATH
=${DESTDIR}${PREFIX}/lib
569 LD_LIBRARY_PATH
=${DESTDIR}${PREFIX}/lib:${LD_LIBRARY_PATH}
571 export LD_LIBRARY_PATH
573 # Set the path so that locally built apps will be found and used
574 if test x
"$PATH" = x
; then
575 PATH
=${DESTDIR}${PREFIX}/bin
577 PATH
=${DESTDIR}${PREFIX}/bin:${PATH}
581 # Choose which make program to use
582 if test x
"$MAKE" = x
; then
586 # Set the default font path for xserver/xorg unless it's already set
587 if test x
"$FONTPATH" = x
; then
588 FONTPATH
="${PREFIX}/lib/X11/fonts/misc/,${PREFIX}/lib/X11/fonts/Type1/,${PREFIX}/lib/X11/fonts/75dpi/,${PREFIX}/lib/X11/fonts/100dpi/,${PREFIX}/lib/X11/fonts/cyrillic/,${PREFIX}/lib/X11/fonts/TTF/"
592 # Create the log file directory
593 $SUDO mkdir
-p ${DESTDIR}${PREFIX}/var
/log
597 # We must install the global macros before anything else