diff options
Diffstat (limited to 'xorg-cf-files/NetBSD.cf')
-rw-r--r-- | xorg-cf-files/NetBSD.cf | 692 |
1 files changed, 692 insertions, 0 deletions
diff --git a/xorg-cf-files/NetBSD.cf b/xorg-cf-files/NetBSD.cf new file mode 100644 index 0000000..b418280 --- /dev/null +++ b/xorg-cf-files/NetBSD.cf @@ -0,0 +1,692 @@ +XCOMM platform: $Xorg: NetBSD.cf,v 1.3 2000/08/17 19:41:46 cpqbld Exp $ + + + +XCOMM platform: $XFree86: xc/config/cf/NetBSD.cf,v 3.122 2003/11/18 18:09:45 dawes Exp $ + + +#ifndef OSName +#define OSName DefaultOSName OSBinaryType +#endif +#ifndef OSMajorVersion +#define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +#define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion DefaultOSTeenyVersion +#endif + + +#ifndef OSVendor +#define OSVendor The NetBSD Foundation, Inc. +#endif +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) + +/* + * C library features + */ +#if ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion > 2) || \ + (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion > 1)) +# define HasPoll YES +#endif +#define HasNdbm YES +#define HasPutenv YES +#if OSMajorVersion == 1 && OSMinorVersion > 4 || OSMajorVersion > 1 +# define HasStrlcat YES +#endif +#define HasSnprintf YES +#define HasBSD44Sockets YES +#define Malloc0ReturnsNull NO +#define SetTtyGroup YES +#define DBMLibrary /**/ +#define HasDlopen YES +#define HasSetProcTitle YES +#ifndef HasLibCrypt +# define HasLibCrypt YES +#endif +#ifndef BuildPDFdocs +# define BuildPDFdocs NO +#endif +#ifndef HasShm +# if OSMajorVersion == 0 && OSMinorVersion == 9 && OSTeenyVersion == 2 +/* + * Shm memory was removed in 0.9B because it was encumbered. + * A free version was added in 0.9C + */ +# define HasShm NO +# else +# define HasShm YES +# endif +#endif +#define HasWChar32 YES +/* + * There's a bug in NetBSD 1.0, 1.1 and 1.2 dlsym() + */ +#if ((OSMajorVersion == 1 && OSMinorVersion < 2) || \ + (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion < 2)) +# define HasDlsymBug YES +#endif +/* Mkstemp is there since 1.2 (at least) */ +#if (!(OSMajorVersion == 0 || \ + (OSMajorVersion == 1 && OSMinorVersion < 2))) +#define HasMkstemp YES +#endif +/* But the standalone mktemp doesn't exist before NetBSD 1.5*/ +#if (OSMajorVersion ==0 || (OSMajorVersion == 1 && OSMinorVersion <= 4)) +# define HasMktemp NO +#else +# define HasMktemp YES +#endif + +#ifndef HasIssetugid +# if (OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion >= 5)) +# define HasIssetugid YES +# endif +#endif + +#if (OSMajorVersion == 1 && OSMinorVersion >= 5 || OSMajorVersion > 1) +#define HasGetIfAddrs YES +#endif + +#define HasUsableFileMmap YES + +#define HasVarRun YES +#define HasVarDb YES + +#define HasShadowPasswd NO + +#define InstallXloadSetGID NO + +#if OSMajorVersion < 1 || (OSMajorVersion == 1 && OSMinorVersion < 5) +#define BuildIPv6 NO +#endif + +#define IPv6SocketsAlsoIPv4 NO + +/* + * NetBSD 1.6M and newer supports POSIX Threads. + */ + +#ifndef NetBSDThreads +# define NetBSDThreads YES +#endif + +#if NetBSDThreads && \ + ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion > 6) || \ + (OSMajorVersion == 1 && OSMinorVersion == 6 && OSTeenyVersion >= 13)) + +# define HasPosixThreads YES +# define ThreadedX YES +# define HasThreadSafeAPI YES +# define ThreadsLibraries -lpthread +# if ((OSMajorVersion == 2 && OSMinorVersion == 99 && OSTeenyVersion < 11) || \ + (OSMajorVersion == 2 && OSMinorVersion < 99) || \ + (OSMajorVersion < 2)) +# define LibraryMTDefines -DUSE_NBSD_THREADLIB +# endif +# define SystemMTDefines -D_REENTRANT +# define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI +#else +# define ThreadedX NO +#endif + +/* + * Compiler Features + */ +#define GccUsesGas YES +#define UseGas YES +#define GnuCpp YES + +#define NeedConstPrototypes YES +#define NeedFunctionPrototypes YES +#define NeedNestedPrototypes YES +#define NeedVarargsPrototypes YES +#define NeedWidePrototypes NO + +#define MkdirHierCmd mkdir -p + +#undef CcCmd +#define CcCmd gcc +#ifndef DefaultCCOptions +#if defined(UseInstalled) +#define DefaultCCOptions /**/ +#else +#ifdef Arm32Architecture +#define DefaultCCOptions -ansi -Dasm=__asm -fsigned-char \ + -fomit-frame-pointer +#elif defined(PpcArchitecture) +# define DefaultCCOptions -ansi -Dasm=__asm -fsigned-char +#else +#define DefaultCCOptions -ansi -Dasm=__asm GccWarningOptions +#endif +#endif +#endif + +#define CppCmd cpp +#define StandardCppOptions -traditional +#define StandardCppDefines /**/ +#define PreProcessCmd CcCmd -E +#define PostIncDir /usr/include + +#define GccGasOption -DGCCUSESGAS +#define AsmDefines -DUSE_GAS + +/* UseElfFormat defaults to YES if __ELF__ set */ +#ifndef UseElfFormat +# ifdef __ELF__ +# undef __ELF__ /* other imake files shouldn't care */ +# define UseElfFormat YES +# else +# define UseElfFormat NO +# endif +#endif + +/* + * Dynamic loading supported starting in 1.0 on a.out platforms, + * and on all ELF platforms. + * + * XXX May not be correct on NetBSD/pmax (ELF, but might not have + * working shared libs). + * + * Disabled for NetBSD/vax until I figure out the scheme. --CS + */ +#if ((OSMajorVersion > 0) && defined(i386Architecture)) || \ + defined(PpcArchitecture) +# ifndef DoLoadableServer +# define DoLoadableServer YES +# endif +#else +# ifndef DoLoadableServer +# define DoLoadableServer NO +# endif +#endif + +#if UseElfFormat +#define DlLibrary -rdynamic /* no -ldl yet */ +#else +#define DlLibrary /**/ +#endif + +/* All ELF NetBSD systems support Weak symbols */ +#define HasWeakSymbols UseElfFormat + +#ifdef i386Architecture +# ifndef DefaultGcc2i386Opt +# if OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion > 2) + /* The GCC strength-reduce bug is fixed for NetBSD 1.3 and later */ +# define DefaultGcc2i386Opt -O2 GccAliasingArgs +# endif +# endif +# define OptimizedCDebugFlags DefaultGcc2i386Opt +# if OSMajorVersion < 1 +# define ServerOSDefines XFree86ServerOSDefines -DXNO_SYSCONF +# else +# define ServerOSDefines XFree86ServerOSDefines +# endif +# if OSMajorVersion == 1 && OSMinorVersion >= 1 || OSMajorVersion >= 2 +# define ServerExtraSysLibs -li386 +# endif +#else +# define OptimizedCDebugFlags -O2 +# if defined(SparcArchitecture) +# define ServerOSDefines -DDDXOSINIT +# elif defined(AlphaArchitecture) +# define ServerOSDefines XFree86ServerOSDefines +# elif defined(Arm32Architecture) +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME +# elif defined(PpcArchitecture) +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DDDXOSINIT +# else +# define ServerOSDefines /**/ +# endif +# if defined(AlphaArchitecture) +# define ServerExtraSysLibs -lalpha +# else +# define ServerExtraSysLibs /**/ +# endif +#endif +#ifdef i386Architecture +# define ServerExtraDefines GccGasOption XFree86ServerDefines +# ifndef XFree86ConsoleDefines +# if (OSMajorVersion == 1 && ((OSMinorVersion == 3 && OSTeenyVersion >= 6) \ + || OSMinorVersion >= 4) \ + || OSMajorVersion >= 2) +# define XFree86ConsoleDefines -DPCCONS_SUPPORT -DPCVT_SUPPORT -DWSCONS_SUPPORT +# else +# define XFree86ConsoleDefines -DPCCONS_SUPPORT -DPCVT_SUPPORT +# endif +# endif +#elif defined(SparcArchitecture) +# if defined(Sparc64Architecture) +# define ServerExtraDefines XFree86ServerDefines -D_XSERVER64 +# else +# define ServerExtraDefines XFree86ServerDefines +# endif +# elif defined(AlphaArchitecture) + /* XXX for the following */ +# define ServerExtraDefines GccGasOption XFree86ServerDefines -D_XSERVER64 +# ifndef XFree86ConsoleDefines +# define XFree86ConsoleDefines -DWSCONS_SUPPORT -DPCCONS_SUPPORT -DPCVT_SUPPORT +# endif +#elif defined(AlphaArchitecture) +# define ServerExtraDefines GccGasOption -D_XSERVER64 +#elif defined(Arm32Architecture) +# define ServerExtraDefines GccGasOption XFree86ServerDefines +# ifndef XFree86ConsoleDefines +# define XFree86ConsoleDefines -DPCCONS_SUPPORT +# endif +#elif defined(PpcArchitecture) +# define ServerExtraDefines GccGasOption XFree86ServerDefines +# ifndef XFree86ConsoleDefines +# define XFree86ConsoleDefines -DWSCONS_SUPPORT +# endif +#else +# define ServerExtraDefines GccGasOption +#endif + +#define StandardDefines -DCSRG_BASED +/* Citrus mb locale were added in 1.5P */ +#if ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion > 5) || \ + (OSMajorVersion == 1 && OSMinorVersion == 5 && OSTeenyVersion >= 15)) +#define XawI18nDefines -DHAS_WCHAR_H -DHAS_WCTYPE_H -DNO_WIDEC_H +#else +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC +#endif + +#ifndef ExtraLibraries +#define ExtraLibraries /**/ +#endif +#ifndef UseGnuMalloc +/* + * There is no way to map 1.4J correctly to OS*Version, so 'J' is mapped + * to OSTeenyVersion == 9. That should be safe, since there will never + * be a release for 1.4.9. + */ +# if ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion > 4) || \ + (OSMajorVersion == 1 && OSMinorVersion == 4 && OSTeenyVersion > 9)) +# define UseGnuMalloc NO +# else +# define UseGnuMalloc YES +#endif +#endif +#ifndef GnuMallocLibrary +#define GnuMallocLibrary -lgnumalloc +#endif + +#if ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion > 2) || \ + (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion > 1)) +#ifndef HasZlib +#define HasZlib YES +#endif +#endif + +#define AdmDir /var/log + +#define HasFlex YES + +/* NetBSD doesn't have gperf in the base install */ +#define DontRebuildGperfOutput YES + +/* + * NetBSD doesn't have perl in default system + * you may override this in host.def if you installed perl from the packages + */ +#ifndef HasPerl +#define HasPerl NO +#endif + +/* + * NetBSD doesn't have gperf in default system + * you may override this in host.def if you installed perl from the packages + */ +#ifndef HasGperf +#define HasGperf NO +#endif + +/* + * Make & install Features + */ +#define HasBsdMake YES +#define CompressAllFonts YES +#define GzipFontCompression YES +#define DefaultUserPath /bin:/usr/bin:/usr/pkg/bin:/usr/local/bin:$(BINDIR) +#define DefaultSystemPath /sbin:/usr/sbin:/bin:/usr/bin:$(BINDIR) + +#ifdef InstallCmd +# undef InstallCmd +# define InstallCmd /usr/bin/install +#endif + +#ifndef ExtraFilesToClean +# define ExtraFilesToClean *.core +#endif + +/* + * Documentation formatting + */ +#define NeqnCmd neqn -Tlatin1 +#define NroffCmd nroff -Tlatin1 +#define EqnCmd eqn -Tps +#define HasGroff YES + +/* + * To use the NetBSD Aperture driver + */ +#if defined(i386Architecture) +# ifndef HasNetBSDApertureDriver +# define HasNetBSDApertureDriver YES +# endif + +/* + * Builtin MTRR support (NetBSD 1.5Y and up) + */ +# if ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion >= 6) || \ + (OSMajorVersion == 1 && OSMinorVersion == 5 && \ + OSTeenyVersion >= 25)) +# define HasMTRRBuiltin YES +# else + /* + * MTRR support provided by the Aperture driver + */ +# if HasNetBSDApertureDriver +# ifndef HasMTRRSupport +# define HasMTRRSupport YES +# endif +# endif +# endif /* MTRRBuiltin */ +#endif /* i386Architecture */ + +/* + * agpgart support (NetBSD 1.5Y and up) + */ +#if ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion >= 6) || \ + (OSMajorVersion == 1 && OSMinorVersion == 5 && \ + OSTeenyVersion >= 25)) +# ifndef HasAgpGart +# define HasAgpGart YES +# endif +#endif + +/* + * MMX, SSE and 3DNow will be autodetected. NetBSD 1.6 and up have the + * necessary kernel and toolchain support. + */ +#if defined(i386Architecture) && \ + ((OSMajorVersion > 1) || (OSMajorVersion == 1 && OSMinorVersion > 5)) +# define HasX86Support YES +# define HasMMXSupport YES +# define Has3DNowSupport YES +# define HasSSESupport YES +#else +# define HasX86Support NO +# define HasMMXSupport NO +# define Has3DNowSupport NO +# define HasSSESupport NO +#endif + +#ifndef HasCookieMaker +# if OSMajorVersion == 1 && OSMinorVersion >= 5 || OSMajorVersion >= 2 + /* NetBSD 1.5 and later have /dev/urandom */ +# define HasCookieMaker YES +# define MkCookieCmd \ + 'dd if=/dev/urandom bs=16 count=1 2>/dev/null | hexdump -e \\"%08x\\"' +# else +# define HasCookieMaker NO +# endif +#endif + + +/* + * ForceSubdirs - force make to build subdirectories + * + * For BSD 4.4 make + */ +#define ForceSubdirs(dirs) @@\ +dirs: .EXEC @@\ + @cd $@ ; echo "making all in $(CURRENT_DIR)/$@..."; \ @@\ + $(MAKE) $(MFLAGS) PassCDebugFlags all @@\ + @@\ +.EXEC: + +/* + * Man pages need to be formatted when installed, so override the default + * imake rules. + */ +#define ManSuffix 1 +#define FileManSuffix 5 +#define ManSourcePath $(MANPATH)/cat + +#define InstallManPageLongBase(file,destdir,dest) @@\ + @@\ +all:: file.0 @@\ + @@\ +file.0:: file.$(MANNEWSUFFIX) @@\ + @if [ -f file.$(MANNEWSUFFIX) ]; \ @@\ + then \ @@\ + cat file.$(MANNEWSUFFIX) | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) > file.0; \ @@\ + fi @@\ + @@\ +install.man:: @@\ + MakeDir($(DESTDIR)destdir) @@\ + -@if [ -f file.0 ]; \ @@\ + then \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.0 $(DESTDIR)destdir/dest.0; \@@\ + fi @@\ + @@\ +clean:: @@\ + RemoveFile(file.0) + +#define InstallManPageLong(file,destdir,dest) @@\ +BuildInstallHtmlManPage(file,dest,$(MANSUFFIX)) @@\ + @@\ +CppManTarget(file, $(EXTRAMANDEFS)) @@\ + @@\ +InstallManPageLongBase(file,destdir,dest) + +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ +BuildInstallHtmlManPage(file,dest,suffix) @@\ + @@\ +CppManTarget(file, $(EXTRAMANDEFS)) @@\ + @@\ +InstallManPageLongBase(file,destdir,dest) + +#define InstallMultipleMan(list,dest) @@\ +install.man:: @@\ + MakeDir($(DESTDIR)dest) @@\ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (MNAME=`echo $$i | cut -f1 -d.`; \ @@\ + set -x; \ @@\ + cat $$i | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) \ @@\ + | $(COL) > $${MNAME}.0; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) $${MNAME}.0 \ @@\ + $(DESTDIR)dest/$${MNAME}.0; \ @@\ + $(RM) $${MNAME}.0); \ @@\ + done + +#define InstallMultipleManSuffix(list,dest,suff) @@\ +install.man:: @@\ + MakeDir($(DESTDIR)dest) @@\ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + cat $$i.suff | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) \ @@\ + | $(COL) > $$i.0; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) $$i.0 \ @@\ + $(DESTDIR)dest/$$i.0; \ @@\ + $(RM) $$i.0 ); \ @@\ + done + +#define InstallManPageAliasesBase(file,destdir,aliases) @@\ +install.man:: @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in aliases; do \ @@\ + (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.0;\ @@\ + (cd $(DESTDIR)/destdir; $(LN) file.0 $$i.0);\ @@\ + ); \ @@\ + done + +#define InstallManPageAliases(file,destdir,aliases) @@\ +InstallHtmlManPageAliases(file,aliases,$(MANSUFFIX)) @@\ + @@\ +InstallManPageAliasesBase(file,destdir,aliases) + +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ +InstallHtmlManPageAliases(file,aliases,suffix) @@\ + @@\ +InstallManPageAliasesBase(file,destdir,aliases) + +/* + * Shared libraries supported starting in 1.0 on a.out platforms, + * and on all ELF platforms. + * + * XXX May not be correct on NetBSD/pmax (ELF, but might not have + * working shared libs). + */ +#if ((OSMajorVersion > 0) && \ + !defined(AlphaArchitecture) && !defined(MipsArchitecture)) || \ + UseElfFormat +# ifndef HasSharedLibraries +# define HasSharedLibraries YES +# endif +#endif + +#ifndef OSBinaryType +#if UseElfFormat +#define OSBinaryType [ELF] +#else +#define OSBinaryType /**/ +#endif +#endif + +#ifndef HasSharedLibraries +#define HasSharedLibraries NO +#endif + +/* + * Unresolved references are fatal on NetBSD 1.5 for libGL, which is + * built with -Bsymbolic. + */ +#if UseElfFormat && OSMajorVersion == 1 && OSMinorVersion == 5 +#define SharedGLReqs $(LDPRELIBS) $(XLIB) -lc +#endif + +#if HasSharedLibraries +#include <bsdLib.rules> +#endif /* HasSharedLibraries */ + +/* Always build the XInput library, regardless of server support on this plattform */ +#if !defined(BuildXInputLib) && !defined(BuildServersOnly) +# define BuildXInputLib YES +#endif + +#if defined(i386Architecture) || defined(Arm32Architecture) || defined(AlphaArchitecture) || defined(PpcArchitecture) +# include <xorg.cf> +#endif + +/* + * Definitions for the SUN server on NetBSD/sparc + */ +#ifdef SparcArchitecture +#ifndef Xsun24Server +#define Xsun24Server YES +#endif +#ifndef XsunServer +#define XsunServer YES +#endif +#ifndef XsunMonoServer +#define XsunMonoServer NO /* XXX: does not link */ +#endif +#ifndef BuildScreenSaverLibrary +#define BuildScreenSaverLibrary YES +#endif + +/* + * XFree86 uses its own (more portable) database routines to speed up + * the RGB database lookups + * However, if you want to use ndbm anyway, you can set that to NO in + * site.def + */ +#ifndef UseRgbTxt +#define UseRgbTxt YES +#endif +#define BuildXF86VidModeExt NO +#define BuildXF86DGA NO +#define BuildXInputExt NO +#include <xorg.cf> +#endif + +/* + * Definition for compiling on MIPS machines + */ +#ifdef MipsArchitecture +#define PositionIndependentCFlags +#define SharedLibraryLoadFlags -x -shared --whole-archive -soname `echo $@ | +sed 's/\.[0-9]*$$//'` +#define SharedXtReqs $(XONLYLIB) $(SMLIB) $(ICELIB) +#define SharedXmuReqs $(LDPRELIB) $(XTOOLONLYLIB) $(XLIB) +#endif + +/* + * Definition for compiling on Alpha machines + */ +#ifdef AlphaArchitecture + +/* Build the shared XDM greeter on Alpha if it supports shared libs */ +#define SharedLibXdmGreet HasSharedLibraries +#endif + +/* + * Definition for compile on macppc machines + */ +#ifdef PpcArchitecture + +# define OptimizedCDebugFlags -O2 +# define XkbServerDefines -DXKB_ALWAYS_USES_SOFT_REPEAT + +# ifndef DoLoadableServer +# define DoLoadableServer YES +# endif + +# define UseElfFormat YES + +#endif + +/* + * Definition for compiling on VAX machines + */ +#ifdef VaxArchitecture +#define BuildServer NO +#endif + +/* + * General settings for all platforms + */ +#ifndef SharedLibXdmGreet +#define SharedLibXdmGreet NO +#endif + +#ifndef BuildHtmlManPages +#define BuildHtmlManPages NO /* We don't want HTML manpages */ +#endif + +#ifndef UseSeparateConfDir +#define UseSeparateConfDir NO /* We don't want appdefs in "/etc/X11". */ +#endif + +#if defined(NetBSDArchitecture) && \ + ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion > 3)) +#define HasDevRandom YES +#define RandomDeviceFile /dev/urandom +#endif |