xenocara/util/cf/sgi.cf
2006-11-25 16:15:45 +00:00

319 lines
9.0 KiB
CFEngine3

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>