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 echo "Building $1 module component $2..."
20 if test "$1" = "xserver" && test "$2" = "xorg" && test -n "$MESAPATH"; then
21 MESA
=-"-with-mesa-source=${MESAPATH}"
26 # Use "sh autogen.sh" since some scripts are not executable in CVS
27 sh autogen.sh
--prefix=${PREFIX} ${MESA} ${QUIET:+--quiet} \
28 ${CACHE:+--cache-file=}${CACHE} ${CONFFLAGS} || failed autogen
$1 $2
29 make || failed
make $1 $2
30 $SUDO env LD_LIBRARY_PATH
=$LD_LIBRARY_PATH make install || \
32 # make clean || failed clean $1 $2
33 # make dist || failed dist $1 $2
34 if test x
"$DISTCHECK" = x1
; then
35 make distcheck || failed distcheck
$1 $2
41 # protocol headers have no build order dependencies
66 build proto XF86BigFont
71 build proto XF86VidMode
75 # bitmaps is needed for building apps, so has to be done separately first
76 # cursors depends on apps/xcursorgen
77 # xkbdata depends on apps/xkbcomp
84 # All protocol modules must be installed before the libs (okay, that's an
85 # overstatement, but all protocol modules should be installed anyway)
87 # the libraries have a dependency order:
88 # xtrans, Xau, Xdmcp before anything else
89 # fontenc before Xfont
92 # (X11 and SM) before Xt
93 # Xt before Xmu and Xpm
94 # Xext before any other extension library
95 # Xfixes before Xcomposite
96 # Xp before XprintUtil before XprintAppUtil
129 build lib XprintAppUtil
142 # Most apps depend at least on libX11.
144 # bdftopcf depends on libXfont
145 # mkfontscale depends on libfontenc and libfreetype
146 # mkfontdir depends on mkfontscale
148 # TODO: detailed breakdown of which apps require which libs
152 build app beforelight
164 build app mkfontscale
218 build app xphelloworld
219 build app xplsprinters
221 build app xprehashprinterlist
228 build app xsetpointer
240 # The server requires at least the following libraries:
246 build_driver_input
() {
250 # Some drivers are only buildable on some OS'es
253 build driver xf86-input-aiptek
254 build driver xf86-input-evdev
255 # not built in monolith, doesn't build for lots of systems
256 # build driver xf86-input-ur98
262 build driver xf86-input-acecad
263 build driver xf86-input-calcomp
264 build driver xf86-input-citron
265 build driver xf86-input-digitaledge
266 build driver xf86-input-dmc
267 build driver xf86-input-dynapro
268 build driver xf86-input-elo2300
269 build driver xf86-input-elographics
270 build driver xf86-input-fpit
271 build driver xf86-input-hyperpen
272 build driver xf86-input-jamstudio
273 build driver xf86-input-joystick
274 build driver xf86-input-keyboard
275 build driver xf86-input-magellan
276 build driver xf86-input-magictouch
277 build driver xf86-input-microtouch
278 build driver xf86-input-mouse
279 build driver xf86-input-mutouch
280 build driver xf86-input-palmax
281 build driver xf86-input-penmount
282 build driver xf86-input-sample
283 build driver xf86-input-spaceorb
284 build driver xf86-input-summa
285 build driver xf86-input-tek4957
286 build driver xf86-input-void
289 build_driver_video
() {
293 # Some drivers are only buildable on some OS'es
296 build driver xf86-video-wsfb
297 build driver xf86-video-sunffb
300 build driver xf86-video-sisusb
301 build driver xf86-video-sunffb
307 build driver xf86-video-apm
308 build driver xf86-video-ark
309 build driver xf86-video-ati
310 build driver xf86-video-chips
311 build driver xf86-video-cirrus
312 build driver xf86-video-cyrix
313 build driver xf86-video-dummy
314 build driver xf86-video-fbdev
315 # build driver xf86-video-glide
316 build driver xf86-video-glint
317 build driver xf86-video-i128
318 build driver xf86-video-i740
319 build driver xf86-video-i810
320 build driver xf86-video-imstt
321 build driver xf86-video-mga
322 build driver xf86-video-neomagic
323 build driver xf86-video-newport
324 build driver xf86-video-nsc
325 build driver xf86-video-nv
326 build driver xf86-video-rendition
327 build driver xf86-video-s3
328 build driver xf86-video-s3virge
329 build driver xf86-video-savage
330 build driver xf86-video-siliconmotion
331 build driver xf86-video-sis
332 build driver xf86-video-sunbw2
333 build driver xf86-video-suncg14
334 build driver xf86-video-suncg3
335 build driver xf86-video-suncg6
336 build driver xf86-video-sunleo
337 build driver xf86-video-suntcx
338 build driver xf86-video-tdfx
339 build driver xf86-video-tga
340 build driver xf86-video-trident
341 build driver xf86-video-tseng
342 build driver xf86-video-vesa
343 build driver xf86-video-vga
344 build driver xf86-video-via
345 build driver xf86-video-vmware
346 build driver xf86-video-voodoo
349 # The server must be built before the drivers
355 # All fonts require mkfontscale and mkfontdir to be available
357 # The following fonts require bdftopcf to be available:
358 # adobe-100dpi, adobe-75dpi, adobe-utopia-100dpi, adobe-utopia-75dpi,
359 # arabic-misc, bh-100dpi, bh-75dpi, bh-lucidatypewriter-100dpi,
360 # bh-lucidatypewriter-75dpi, bitstream-100dpi, bitstream-75dpi,
361 # cronyx-cyrillic, cursor-misc, daewoo-misc, dec-misc, isas-misc,
362 # jis-misc, micro-misc, misc-cyrillic, misc-misc, mutt-misc,
363 # schumacher-misc, screen-cyrillic, sony-misc, sun-misc and
366 # Within the font module, the util component must be built before the
368 # adobe-100dpi, adobe-75dpi, adobe-utopia-100dpi, adobe-utopia-75dpi,
369 # bh-100dpi, bh-75dpi, bh-lucidatypewriter-100dpi, bh-lucidatypewriter-75dpi,
370 # misc-misc and schumacher-misc
372 # The alias component is recommended to be installed after the other fonts
373 # since the fonts.alias files reference specific fonts installed from the
374 # other font components
377 build font adobe-100dpi
378 build font adobe-75dpi
379 build font adobe-utopia-100dpi
380 build font adobe-utopia-75dpi
381 build font adobe-utopia-type1
382 build font arabic-misc
385 build font bh-lucidatypewriter-100dpi
386 build font bh-lucidatypewriter-75dpi
389 build font bitstream-100dpi
390 build font bitstream-75dpi
391 build font bitstream-type1
392 build font cronyx-cyrillic
393 build font cursor-misc
394 build font daewoo-misc
399 build font micro-misc
400 build font misc-cyrillic
403 build font schumacher-misc
404 build font screen-cyrillic
407 build font winitzki-cyrillic
408 build font xfree86-type1
418 echo "Usage: $0 [options] prefix"
419 echo " where options are:"
420 echo " -d : run make distcheck in addition to others"
421 echo " -m path-to-mesa-sources-for-xserver : full path to Mesa sources"
422 echo " -n : do not quit after error; just print error message"
423 echo " -s sudo-command : sudo command to use"
426 # Process command line args
452 if test x
"${PREFIX}" = x
; then
457 # Must create local aclocal dir or aclocal fails
458 ACLOCAL_LOCALDIR
="${PREFIX}/share/aclocal"
459 $SUDO mkdir
-p ${ACLOCAL_LOCALDIR}
461 # The following is required to make aclocal find our .m4 macros
462 if test x
"$ACLOCAL" = x
; then
463 ACLOCAL
="aclocal -I ${ACLOCAL_LOCALDIR}"
465 ACLOCAL
="${ACLOCAL} -I ${ACLOCAL_LOCALDIR}"
469 # The following is required to make pkg-config find our .pc metadata files
470 if test x
"$PKG_CONFIG_PATH" = x
; then
471 PKG_CONFIG_PATH
=${PREFIX}/lib
/pkgconfig
473 PKG_CONFIG_PATH
=${PREFIX}/lib
/pkgconfig
:${PKG_CONFIG_PATH}
475 export PKG_CONFIG_PATH
477 # Set the library path so that locally built libs will be found by apps
478 if test x
"$LD_LIBRARY_PATH" = x
; then
479 LD_LIBRARY_PATH
=${PREFIX}/lib
481 LD_LIBRARY_PATH
=${PREFIX}/lib
:${LD_LIBRARY_PATH}
483 export LD_LIBRARY_PATH
485 # Set the path so that locally built apps will be found and used
486 if test x
"$PATH" = x
; then
489 PATH
=${PREFIX}/bin
:${PATH}
493 # Set the default font path for xserver/xorg unless it's already set
494 if test x
"$FONTPATH" = x
; then
495 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/"
499 # Create the log file directory
500 $SUDO mkdir
-p ${PREFIX}/var
/log
504 # We must install the global macros before anything else