Edit

IABSD.fr/xenocara/util/cf/sgi.cf

Branch :

  • Show log

    Commit

  • Author : matthieu
    Date : 2006-11-25 16:15:45
    Hash : 782466d3
    Message : import from X.Org 7.2RC2

  • util/cf/sgi.cf
  • XCOMM platform:  $Xorg: sgi.cf,v 1.4 2000/08/17 19:41:48 cpqbld Exp $
    XCOMM $XFree86: xc/config/cf/sgi.cf,v 1.12tsi Exp $
    
    #ifndef OSName
    # define OSName		DefaultOSName
    #endif
    #ifndef OSMajorVersion
    # define OSMajorVersion	DefaultOSMajorVersion
    #endif
    #ifndef OSMinorVersion
    # define OSMinorVersion	DefaultOSMinorVersion
    #endif
    #ifndef OSTeenyVersion
    # define OSTeenyVersion	DefaultOSTeenyVersion
    #endif
    XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion)
    
    #if OSMajorVersion < 4
    /* We do not guarantee this will work */
    #define BootstrapCFlags		-DX_WCHAR -DX_LOCALE -DX_USEBFUNCS -DSYSV
    #define StandardDefines		-DX_WCHAR -DX_LOCALE -DX_USEBFUNCS -DSYSV
    #define SetTtyGroup		NO
    #else
    #define HasPlugin		YES
    #define SetTtyGroup		YES
    #define ExtraFilesToClean	so_locations
    #endif
    
    #if OSMajorVersion < 5
    #define SystemV			YES
    #define XawI18nDefines		-DUSE_XWCHAR_STRING -DUSE_XMBTOWC
    #else
    #define BootstrapCFlags		-DSVR4
    #define StandardDefines		-DSVR4
    #define SystemV4		YES
    #define HasWChar32              YES
    #define HasVFork		NO
    #if OSMajorVersion < 6
    #define XawI18nDefines		-DHAS_WCTYPE_H -DHAS_ISW_FUNCS
    #else
    #define XawI18nDefines		-DHAS_WCHAR_H -DHAS_ISW_FUNCS
    #define HasSetenv		NO
    #define HasSnprintf		YES
    #endif
    #define AllocateLocalDefines	-DINCLUDE_ALLOCA_H
    #ifndef ExtraLoadFlags
    #define ExtraLoadFlags -Wl,-rpath,$(USRLIBDIRPATH)
    #endif
    #endif
    
    /*
     * To build 64-bit binaries define Mips64Architecture in your site.def or
     * host.def file. This is usually on done at the X Consortium to test
     * big endian 64-bit cleanliness.
     * To build 32-bit binaries using the old 32-bit mode, define
     * NoMipsN32Archtecture in your site.def or host.def file.
     * Otherwise the default is to use the "new 32" mode as requested by SGI.
     */
    #ifndef MipsN32Architecture
    #if !defined(Mips64Architecture) && !defined(NoMipsN32Architecture)
    #define MipsN32Architecture YES
    #endif
    #endif
    
    #ifdef Mips64Architecture
    # define BuildLibPathVar	_RLD_ROOT=/dev/null LD_LIBRARY64_PATH
    # define SystemBuildLibPath	/usr/lib64:/lib64
    # define LdCmd			ld -64
    # define AsCmd			as -64
    #elif defined(MipsN32Architecture)
    # define BuildLibPathVar	_RLD_ROOT=/dev/null LD_LIBRARYN32_PATH
    # define SystemBuildLibPath	/usr/lib32:/lib32
    # define LdCmd			ld -n32
    # define AsCmd			as -n32
    #else
    # define BuildLibPathVar	_RLD_ROOT=/dev/null LD_LIBRARY_PATH
    # define SystemBuildLibPath	/usr/lib:/lib
    # define LdCmd			ld -32
    # define AsCmd			as -32
    #endif
    #define HasCplusplus		YES
    #define Malloc0ReturnsNull	YES	/* IRIX [56].x -lmalloc needs this */
    #define HasPutenv		YES
    #define ExecableScripts		YES
    #define HasNdbm			YES
    #define HasPoll                 YES
    #define ExpandManNames          YES
    #define LexLib			/* Not needed */
    #ifndef BuildXInputExt
    #define BuildXInputExt		YES
    #endif
    
    #if OSMajorVersion > 3 || (OSMajorVersion == 3 && OSMinorVersion > 2)
    #define NeedVarargsPrototypes	YES
    #define NeedConstPrototypes	YES
    #define NeedWidePrototypes	NO
    #endif
    
    #include <sgiLib.rules>
    
    #if OSMajorVersion < 5
    #define SymbolTables -Wf,-XNp16000,-XNd16000,-XNh2000
    #define ServerSymbolTables -Wf,-XNp8000,-XNh2000,-XNd8000
    #else
    #define SymbolTables
    #define ServerSymbolTables
    #endif
    
    /* this is for floating point, ANSI cpp */
    #if OSMajorVersion < 5
    /* Extra libraries provide : yp, sysV malloc, shared libc, and widechar */
    # define ExtraLibraries -lsun -lmalloc -lc_s -lw
    # define sgiCCOptions -xansi -D__STDC__=1 -float
    #else
    # if OSMajorVersion < 6
    #  define sgiCCOptions -xansi
    # else
    #  define CppCmd cc -E -cckr
    #  ifdef Mips64Architecture
    /* set Mips64Architecture in host.def. Usually don't need it but we
     * (the X Consortium) want a  64-bit big-endian machine to test on. */
    #   define sgiCCOptions -xansi -mips3 -64
    #   define DlLibrary /**/
    #  elif defined(MipsN32Architecture)
    /* Set MipsN32Architecture to build "new" 32-bit objs with a 32-bit kernel. */
    #   define sgiCCOptions -xansi -mips3 -n32
    #  else
    #   define sgiCCOptions -xansi -32
    #  endif
    #  if OSMinorVersion == 2
    /* if you haven't installed patch 1361, 1403, or 1645 on IRIX 6.2 then you
     * must add "#define HasPosixThreads NO" in your site.def or host.def file
     */
    #   ifndef HasPosixThreads
    #    define HasPosixThreads	YES
    #   endif
    #   define ThreadedX HasPosixThreads
    #   define ThreadsLibraries -lpthread
    /*
     * Add "#define HasSgiThreadsPatch1403 YES" to your site.def or host.def if
     * that's which patch you have.
     */
    #   ifndef HasSgiThreadsPatch1403
    #    define HasSgiThreadsPatch1403 NO
    #   endif
    #   if (HasSgiThreadsPatch1403)
    #    define SystemMTDefines -D_POSIX_THREAD_SAFE_FUNCTIONS
    #   endif
    #  endif
    # endif
    /* SGI's -lsocket -lnsl is broken, at least in 5.2, so override here */
    # define ExtraLibraries /**/
    #endif
    
    /* IRIX 6.5 doesn't support IPv6, but #define's AF_INET6.  Go figure... */
    #ifndef BuildIPv6
    #define BuildIPv6	NO
    #endif
    
    #undef  BuildXF86DRI
    #define BuildXF86DRI	NO
    
    #if !HasGcc
    #if !defined(OptimizedCDebugFlags)
    #if defined(MipsN32Architecture) || defined(Mips64Architecture)
    #define OptimizedCDebugFlags -O -OPT:Olimit=0
    #else
    #define OptimizedCDebugFlags -O -Olimit 2048
    #endif
    #endif
    #if !defined(RawCppCmd)
    #define RawCppCmd CppCmd
    #endif
    #endif
    
    #ifndef DefaultCCOptions
    #define DefaultCCOptions sgiCCOptions SymbolTables
    #endif
    #ifndef ServerCCOptions
    #define ServerCCOptions sgiCCOptions ServerSymbolTables
    #endif
    #ifndef DefaultCplusplusOptions
    #define DefaultCplusplusOptions DefaultCCOptions
    #endif
    
    /* For SGI C++ compiler, need to search extra dirs in make depend */
    #ifndef CplusplusDependIncludes
    #define CplusplusDependIncludes -I/usr/include/CC
    #endif
    
    /* At SGI, we don't need this */
    #define ConstructMFLAGS		NO	/* build MFLAGS from MAKEFLAGS */
    
    /* Used only for compressed fonts */
    #define UNCOMPRESSPATH /usr/bsd/uncompress /* obsolete */
    
    /* Normally used only to conditionally chose the default font path order */
    #define PrimaryScreenResolution 96
    
    /* Override Imake.tmpl's "-X" flag */
    #define LdCombineFlags -r
    
    /* Installation Build Parameters */
    #define InstKmemFlags -m 2711 -g sys
    
    #define ArCmd ar scq
    
    /* for xdm or anyone else to use */
    #define DefaultUserPath :/usr/sbin:/usr/bsd:/usr/bin:/bin:$(BINDIR):/etc:/usr/etc
    #define DefaultSystemPath /usr/sbin:/usr/bsd:/bin:/etc:/usr/bin:/usr/etc:$(BINDIR)
    
    #define ServerOSDefines		-DDDXTIME XFree86ServerOSDefines
    
    #ifndef ServerExtraDefines
    #ifndef Mips64Architecture
    #define ServerExtraDefines	-DNEED_LINEHELPER AllocateLocalDefines \
    				XFree86ServerDefines
    #else
    #define ServerExtraDefines	-DNEED_LINEHELPER AllocateLocalDefines \
    				XFree86ServerDefines -D_XSERVER64
    #endif
    #endif
    
    /* Changed to a single shell command for pmake/smake */
    #if OSMajorVersion < 5
    /*
     * NormalLibObjCompile - compile fragment for a library object file
     *	do ld -x to remove line number symbols for libraries
     */
    #define NormalLibObjCompile(options)	ClearmakeOSName			  \
    	$(RM) $@ $*.os \						@@\
    	&& $(CC) -c options $(CFLAGS) $*.c \				@@\
    	&& $(LD) $(LDSTRIPFLAGS) -r $@ -o $*.os \			@@\
    	&& $(MV) $*.os $@
    #endif
    
    #define LibObjCompile(dir,options) ClearmakeOSName			  \
    	$(RM) $@ dir/$@ \						@@\
    	&& $(CC) -c $(CCOPTIONS) $(ALLDEFINES) options $*.c \		@@\
    	&& $(MV) $@ dir/$@
    
    #ifndef HasMakefileSafeInclude
    #define HasMakefileSafeInclude YES
    #endif
    #ifndef IncludeMakefile
    #define IncludeMakefile(file) @@sinclude file
    #endif
    
    /* needs to find nroff on the system to work */
    #ifndef ManKeywordsTarget
    #define ManKeywordsTarget(manpath)					@@\
    man_keywords::								@@\
    	/usr/lib/makewhatis -M $(DESTDIR)manpath $(DESTDIR)manpath/whatis
    #endif
    
    #define MotifDefines		-DSYS_DIR -DPORT_NOVFORK -DNO_REGCOMP
    
    #if !defined(HasGcc) || !HasGcc
    
    #ifndef CppFileTarget
    #define CppFileTarget(dst,src,defs,deplist)				@@\
    dst::  src deplist							@@\
    	RemoveFile($@)							@@\
    	ClearmakeOSName \
    	$(CPP) CppNoLineInfoOption defs src 2>/dev/null | CppSedMagic >$@; @@\
    									@@\
    clean::									@@\
    	RemoveFiles(dst)
    #endif /* CppFileTarget */
    
    #ifndef CppScriptTarget
    #if ExecableScripts		/* can use #! instead of colon */
    #define CppScriptTarget(dst,src,defs,deplist)				@@\
    dst::	src deplist							@@\
    	RemoveFile($@)							@@\
    	ClearmakeOSName \
    	$(CPP) CppNoLineInfoOption defs src | CppSedMagic >$@		@@\
    	chmod a+x $@							@@\
    									@@\
    clean::									@@\
    	RemoveFiles(dst)
    #else
    #define CppScriptTarget(dst,src,defs,deplist)				@@\
    dst::  src deplist							@@\
    	RemoveFile($@)							@@\
    	ClearmakeOSName \
    	echo \: >$@							@@\
    	sed '1d' src | $(CPP) CppNoLineInfoOption defs | CppSedMagic >>$@	@@\
    	chmod a+x $@							@@\
    									@@\
    clean::									@@\
    	RemoveFile(dst)
    #endif /* ExecableScripts */
    #endif /* CppScriptTarget */
    
    /* Like CppFileTarget, but don't add any default defines */
    #ifndef CppRawFileTarget
    #define CppRawFileTarget(dst,src,defs,deplist)				@@\
    dst::  src deplist							@@\
    	RemoveFile($@)							@@\
    	ClearmakeOSName \
    	$(RAWCPP) CppNoLineInfoOption defs src | CppSedMagic >$@	@@\
    									@@\
    clean::									@@\
    	RemoveFiles(dst)
    #endif /* CppFileTarget */
    
    #endif /* !HasGcc */
    
    #ifndef DoLoadableServer
    #define DoLoadableServer YES
    #endif
    
    #ifndef UseDeprecatedKeyboardDriver
    #define UseDeprecatedKeyboardDriver YES
    #endif
    
    #include <xorg.cf>