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
220 build app xphelloworld
221 build app xplsprinters
223 build app xprehashprinterlist
231 build app xsetpointer
243 # The server requires at least the following libraries:
249 build_driver_input
() {
253 # Some drivers are only buildable on some OS'es
256 build driver xf86-input-aiptek
257 build driver xf86-input-evdev
258 # not built in monolith, doesn't build for lots of systems
259 # build driver xf86-input-ur98
265 build driver xf86-input-acecad
266 build driver xf86-input-calcomp
267 build driver xf86-input-citron
268 build driver xf86-input-digitaledge
269 build driver xf86-input-dmc
270 build driver xf86-input-dynapro
271 build driver xf86-input-elo2300
272 build driver xf86-input-elographics
273 build driver xf86-input-fpit
274 build driver xf86-input-hyperpen
275 build driver xf86-input-jamstudio
276 build driver xf86-input-joystick
277 build driver xf86-input-keyboard
278 build driver xf86-input-magellan
279 build driver xf86-input-magictouch
280 build driver xf86-input-microtouch
281 build driver xf86-input-mouse
282 build driver xf86-input-mutouch
283 build driver xf86-input-palmax
284 build driver xf86-input-penmount
285 build driver xf86-input-sample
286 build driver xf86-input-spaceorb
287 build driver xf86-input-summa
288 build driver xf86-input-tek4957
289 build driver xf86-input-void
292 build_driver_video
() {
296 # Some drivers are only buildable on some OS'es
299 build driver xf86-video-wsfb
300 build driver xf86-video-sunffb
303 build driver xf86-video-sisusb
304 build driver xf86-video-sunffb
310 build driver xf86-video-apm
311 build driver xf86-video-ark
312 build driver xf86-video-ati
313 build driver xf86-video-chips
314 build driver xf86-video-cirrus
315 build driver xf86-video-cyrix
316 build driver xf86-video-dummy
317 build driver xf86-video-fbdev
318 # build driver xf86-video-glide
319 build driver xf86-video-glint
320 build driver xf86-video-i128
321 build driver xf86-video-i740
322 build driver xf86-video-i810
323 build driver xf86-video-imstt
324 build driver xf86-video-mga
325 build driver xf86-video-neomagic
326 build driver xf86-video-newport
327 build driver xf86-video-nsc
328 build driver xf86-video-nv
329 build driver xf86-video-rendition
330 build driver xf86-video-s3
331 build driver xf86-video-s3virge
332 build driver xf86-video-savage
333 build driver xf86-video-siliconmotion
334 build driver xf86-video-sis
335 build driver xf86-video-sunbw2
336 build driver xf86-video-suncg14
337 build driver xf86-video-suncg3
338 build driver xf86-video-suncg6
339 build driver xf86-video-sunleo
340 build driver xf86-video-suntcx
341 build driver xf86-video-tdfx
342 build driver xf86-video-tga
343 build driver xf86-video-trident
344 build driver xf86-video-tseng
345 build driver xf86-video-vesa
346 build driver xf86-video-vga
347 build driver xf86-video-via
348 build driver xf86-video-vmware
349 build driver xf86-video-voodoo
352 # The server must be built before the drivers
358 # All fonts require mkfontscale and mkfontdir to be available
360 # The following fonts require bdftopcf to be available:
361 # adobe-100dpi, adobe-75dpi, adobe-utopia-100dpi, adobe-utopia-75dpi,
362 # arabic-misc, bh-100dpi, bh-75dpi, bh-lucidatypewriter-100dpi,
363 # bh-lucidatypewriter-75dpi, bitstream-100dpi, bitstream-75dpi,
364 # cronyx-cyrillic, cursor-misc, daewoo-misc, dec-misc, isas-misc,
365 # jis-misc, micro-misc, misc-cyrillic, misc-misc, mutt-misc,
366 # schumacher-misc, screen-cyrillic, sony-misc, sun-misc and
369 # Within the font module, the util component must be built before the
371 # adobe-100dpi, adobe-75dpi, adobe-utopia-100dpi, adobe-utopia-75dpi,
372 # bh-100dpi, bh-75dpi, bh-lucidatypewriter-100dpi, bh-lucidatypewriter-75dpi,
373 # misc-misc and schumacher-misc
375 # The alias component is recommended to be installed after the other fonts
376 # since the fonts.alias files reference specific fonts installed from the
377 # other font components
380 build font adobe-100dpi
381 build font adobe-75dpi
382 build font adobe-utopia-100dpi
383 build font adobe-utopia-75dpi
384 build font adobe-utopia-type1
385 build font arabic-misc
388 build font bh-lucidatypewriter-100dpi
389 build font bh-lucidatypewriter-75dpi
392 build font bitstream-100dpi
393 build font bitstream-75dpi
394 build font bitstream-type1
395 build font cronyx-cyrillic
396 build font cursor-misc
397 build font daewoo-misc
402 build font micro-misc
403 build font misc-cyrillic
406 build font schumacher-misc
407 build font screen-cyrillic
410 build font winitzki-cyrillic
411 build font xfree86-type1
421 echo "Usage: $0 [options] prefix"
422 echo " where options are:"
423 echo " -d : run make distcheck in addition to others"
424 echo " -m path-to-mesa-sources-for-xserver : full path to Mesa sources"
425 echo " -n : do not quit after error; just print error message"
426 echo " -s sudo-command : sudo command to use"
429 # Process command line args
455 if test x
"${PREFIX}" = x
; then
460 # Must create local aclocal dir or aclocal fails
461 ACLOCAL_LOCALDIR
="${PREFIX}/share/aclocal"
462 $SUDO mkdir
-p ${ACLOCAL_LOCALDIR}
464 # The following is required to make aclocal find our .m4 macros
465 if test x
"$ACLOCAL" = x
; then
466 ACLOCAL
="aclocal -I ${ACLOCAL_LOCALDIR}"
468 ACLOCAL
="${ACLOCAL} -I ${ACLOCAL_LOCALDIR}"
472 # The following is required to make pkg-config find our .pc metadata files
473 if test x
"$PKG_CONFIG_PATH" = x
; then
474 PKG_CONFIG_PATH
=${PREFIX}/lib
/pkgconfig
476 PKG_CONFIG_PATH
=${PREFIX}/lib
/pkgconfig
:${PKG_CONFIG_PATH}
478 export PKG_CONFIG_PATH
480 # Set the library path so that locally built libs will be found by apps
481 if test x
"$LD_LIBRARY_PATH" = x
; then
482 LD_LIBRARY_PATH
=${PREFIX}/lib
484 LD_LIBRARY_PATH
=${PREFIX}/lib
:${LD_LIBRARY_PATH}
486 export LD_LIBRARY_PATH
488 # Set the path so that locally built apps will be found and used
489 if test x
"$PATH" = x
; then
492 PATH
=${PREFIX}/bin
:${PATH}
496 # Set the default font path for xserver/xorg unless it's already set
497 if test x
"$FONTPATH" = x
; then
498 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/"
502 # Create the log file directory
503 $SUDO mkdir
-p ${PREFIX}/var
/log
507 # We must install the global macros before anything else