NetBSD.cf revision c5867c1c
111d341caSmrgXCOMM platform: $Xorg: NetBSD.cf,v 1.3 2000/08/17 19:41:46 cpqbld Exp $ 211d341caSmrg 311d341caSmrg 411d341caSmrg 511d341caSmrgXCOMM platform: $XFree86: xc/config/cf/NetBSD.cf,v 3.122 2003/11/18 18:09:45 dawes Exp $ 611d341caSmrg 711d341caSmrg 811d341caSmrg#ifndef OSName 911d341caSmrg#define OSName DefaultOSName OSBinaryType 1011d341caSmrg#endif 1111d341caSmrg#ifndef OSMajorVersion 1211d341caSmrg#define OSMajorVersion DefaultOSMajorVersion 1311d341caSmrg#endif 1411d341caSmrg#ifndef OSMinorVersion 1511d341caSmrg#define OSMinorVersion DefaultOSMinorVersion 1611d341caSmrg#endif 1711d341caSmrg#ifndef OSTeenyVersion 1811d341caSmrg#define OSTeenyVersion DefaultOSTeenyVersion 1911d341caSmrg#endif 2011d341caSmrg 2111d341caSmrg 2211d341caSmrg#ifndef OSVendor 2311d341caSmrg#define OSVendor The NetBSD Foundation, Inc. 2411d341caSmrg#endif 2511d341caSmrgXCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) 2611d341caSmrg 2711d341caSmrg/* 2811d341caSmrg * C library features 2911d341caSmrg */ 3011d341caSmrg#if ((OSMajorVersion > 1) || \ 3111d341caSmrg (OSMajorVersion == 1 && OSMinorVersion > 2) || \ 3211d341caSmrg (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion > 1)) 3311d341caSmrg# define HasPoll YES 3411d341caSmrg#endif 3511d341caSmrg#define HasNdbm YES 3611d341caSmrg#define HasPutenv YES 3711d341caSmrg#if OSMajorVersion == 1 && OSMinorVersion > 4 || OSMajorVersion > 1 3811d341caSmrg# define HasStrlcat YES 3911d341caSmrg#endif 4011d341caSmrg#define HasSnprintf YES 4111d341caSmrg#define HasBSD44Sockets YES 4211d341caSmrg#define Malloc0ReturnsNull NO 4311d341caSmrg#define SetTtyGroup YES 4411d341caSmrg#define DBMLibrary /**/ 4511d341caSmrg#define HasDlopen YES 4611d341caSmrg#define HasSetProcTitle YES 4711d341caSmrg#ifndef HasLibCrypt 4811d341caSmrg# define HasLibCrypt YES 4911d341caSmrg#endif 5011d341caSmrg#ifndef BuildPDFdocs 5111d341caSmrg# define BuildPDFdocs NO 5211d341caSmrg#endif 5311d341caSmrg#ifndef HasShm 5411d341caSmrg# if OSMajorVersion == 0 && OSMinorVersion == 9 && OSTeenyVersion == 2 5511d341caSmrg/* 5611d341caSmrg * Shm memory was removed in 0.9B because it was encumbered. 5711d341caSmrg * A free version was added in 0.9C 5811d341caSmrg */ 5911d341caSmrg# define HasShm NO 6011d341caSmrg# else 6111d341caSmrg# define HasShm YES 6211d341caSmrg# endif 6311d341caSmrg#endif 6411d341caSmrg#define HasWChar32 YES 6511d341caSmrg/* 6611d341caSmrg * There's a bug in NetBSD 1.0, 1.1 and 1.2 dlsym() 6711d341caSmrg */ 6811d341caSmrg#if ((OSMajorVersion == 1 && OSMinorVersion < 2) || \ 6911d341caSmrg (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion < 2)) 7011d341caSmrg# define HasDlsymBug YES 7111d341caSmrg#endif 7211d341caSmrg/* Mkstemp is there since 1.2 (at least) */ 7311d341caSmrg#if (!(OSMajorVersion == 0 || \ 74c5867c1cSmrg (OSMajorVersion == 1 && OSMinorVersion < 2))) 7511d341caSmrg#define HasMkstemp YES 7611d341caSmrg#endif 7711d341caSmrg/* But the standalone mktemp doesn't exist before NetBSD 1.5*/ 7811d341caSmrg#if (OSMajorVersion ==0 || (OSMajorVersion == 1 && OSMinorVersion <= 4)) 7911d341caSmrg# define HasMktemp NO 8011d341caSmrg#else 8111d341caSmrg# define HasMktemp YES 8211d341caSmrg#endif 8311d341caSmrg 8411d341caSmrg#ifndef HasIssetugid 8511d341caSmrg# if (OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion >= 5)) 8611d341caSmrg# define HasIssetugid YES 8711d341caSmrg# endif 8811d341caSmrg#endif 8911d341caSmrg 90c5867c1cSmrg#if (OSMajorVersion == 1 && OSMinorVersion >= 5 || OSMajorVersion > 1) 9111d341caSmrg#define HasGetIfAddrs YES 9211d341caSmrg#endif 9311d341caSmrg 9411d341caSmrg#define HasUsableFileMmap YES 9511d341caSmrg 9611d341caSmrg#define HasVarRun YES 9711d341caSmrg#define HasVarDb YES 9811d341caSmrg 9911d341caSmrg#define HasShadowPasswd NO 10011d341caSmrg 10111d341caSmrg#define InstallXloadSetGID NO 10211d341caSmrg 10311d341caSmrg#if OSMajorVersion < 1 || (OSMajorVersion == 1 && OSMinorVersion < 5) 10411d341caSmrg#define BuildIPv6 NO 10511d341caSmrg#endif 10611d341caSmrg 10711d341caSmrg#define IPv6SocketsAlsoIPv4 NO 10811d341caSmrg 10911d341caSmrg/* 11011d341caSmrg * NetBSD 1.6M and newer supports POSIX Threads. 11111d341caSmrg */ 11211d341caSmrg 11311d341caSmrg#ifndef NetBSDThreads 11411d341caSmrg# define NetBSDThreads YES 11511d341caSmrg#endif 11611d341caSmrg 11711d341caSmrg#if NetBSDThreads && \ 11811d341caSmrg ((OSMajorVersion > 1) || \ 11911d341caSmrg (OSMajorVersion == 1 && OSMinorVersion > 6) || \ 12011d341caSmrg (OSMajorVersion == 1 && OSMinorVersion == 6 && OSTeenyVersion >= 13)) 12111d341caSmrg 12211d341caSmrg# define HasPosixThreads YES 12311d341caSmrg# define ThreadedX YES 12411d341caSmrg# define HasThreadSafeAPI YES 12511d341caSmrg# define ThreadsLibraries -lpthread 12611d341caSmrg# if ((OSMajorVersion == 2 && OSMinorVersion == 99 && OSTeenyVersion < 11) || \ 12711d341caSmrg (OSMajorVersion == 2 && OSMinorVersion < 99) || \ 12811d341caSmrg (OSMajorVersion < 2)) 12911d341caSmrg# define LibraryMTDefines -DUSE_NBSD_THREADLIB 13011d341caSmrg# endif 13111d341caSmrg# define SystemMTDefines -D_REENTRANT 13211d341caSmrg# define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI 133c5867c1cSmrg#else 13411d341caSmrg# define ThreadedX NO 13511d341caSmrg#endif 13611d341caSmrg 13711d341caSmrg/* 13811d341caSmrg * Compiler Features 13911d341caSmrg */ 14011d341caSmrg#define GccUsesGas YES 14111d341caSmrg#define UseGas YES 14211d341caSmrg#define GnuCpp YES 14311d341caSmrg 14411d341caSmrg#define NeedConstPrototypes YES 14511d341caSmrg#define NeedFunctionPrototypes YES 14611d341caSmrg#define NeedNestedPrototypes YES 14711d341caSmrg#define NeedVarargsPrototypes YES 14811d341caSmrg#define NeedWidePrototypes NO 14911d341caSmrg 15011d341caSmrg#define MkdirHierCmd mkdir -p 15111d341caSmrg 15211d341caSmrg#undef CcCmd 15311d341caSmrg#define CcCmd gcc 15411d341caSmrg#ifndef DefaultCCOptions 15511d341caSmrg#if defined(UseInstalled) 15611d341caSmrg#define DefaultCCOptions /**/ 15711d341caSmrg#else 15811d341caSmrg#ifdef Arm32Architecture 15911d341caSmrg#define DefaultCCOptions -ansi -Dasm=__asm -fsigned-char \ 16011d341caSmrg -fomit-frame-pointer 16111d341caSmrg#elif defined(PpcArchitecture) 16211d341caSmrg# define DefaultCCOptions -ansi -Dasm=__asm -fsigned-char 16311d341caSmrg#else 16411d341caSmrg#define DefaultCCOptions -ansi -Dasm=__asm GccWarningOptions 16511d341caSmrg#endif 16611d341caSmrg#endif 16711d341caSmrg#endif 16811d341caSmrg 16911d341caSmrg#define CppCmd cpp 17011d341caSmrg#define StandardCppOptions -traditional 17111d341caSmrg#define StandardCppDefines /**/ 17211d341caSmrg#define PreProcessCmd CcCmd -E 17311d341caSmrg#define PostIncDir /usr/include 17411d341caSmrg 17511d341caSmrg#define GccGasOption -DGCCUSESGAS 17611d341caSmrg#define AsmDefines -DUSE_GAS 17711d341caSmrg 17811d341caSmrg/* UseElfFormat defaults to YES if __ELF__ set */ 17911d341caSmrg#ifndef UseElfFormat 18011d341caSmrg# ifdef __ELF__ 18111d341caSmrg# undef __ELF__ /* other imake files shouldn't care */ 18211d341caSmrg# define UseElfFormat YES 18311d341caSmrg# else 18411d341caSmrg# define UseElfFormat NO 18511d341caSmrg# endif 18611d341caSmrg#endif 18711d341caSmrg 18811d341caSmrg/* 18911d341caSmrg * Dynamic loading supported starting in 1.0 on a.out platforms, 19011d341caSmrg * and on all ELF platforms. 19111d341caSmrg * 19211d341caSmrg * XXX May not be correct on NetBSD/pmax (ELF, but might not have 19311d341caSmrg * working shared libs). 19411d341caSmrg * 195c5867c1cSmrg * Disabled for NetBSD/vax until I figure out the scheme. --CS 19611d341caSmrg */ 19711d341caSmrg#if ((OSMajorVersion > 0) && defined(i386Architecture)) || \ 198b94d2739Scube defined(PpcArchitecture) || defined(AMD64Architecture) 19911d341caSmrg# ifndef DoLoadableServer 20011d341caSmrg# define DoLoadableServer YES 20111d341caSmrg# endif 20211d341caSmrg#else 20311d341caSmrg# ifndef DoLoadableServer 20411d341caSmrg# define DoLoadableServer NO 20511d341caSmrg# endif 20611d341caSmrg#endif 20711d341caSmrg 20811d341caSmrg#if UseElfFormat 20911d341caSmrg#define DlLibrary -rdynamic /* no -ldl yet */ 21011d341caSmrg#else 21111d341caSmrg#define DlLibrary /**/ 21211d341caSmrg#endif 21311d341caSmrg 21411d341caSmrg/* All ELF NetBSD systems support Weak symbols */ 215c5867c1cSmrg#define HasWeakSymbols UseElfFormat 21611d341caSmrg 21711d341caSmrg#ifdef i386Architecture 21811d341caSmrg# ifndef DefaultGcc2i386Opt 21911d341caSmrg# if OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion > 2) 22011d341caSmrg /* The GCC strength-reduce bug is fixed for NetBSD 1.3 and later */ 22111d341caSmrg# define DefaultGcc2i386Opt -O2 GccAliasingArgs 22211d341caSmrg# endif 22311d341caSmrg# endif 22411d341caSmrg# define OptimizedCDebugFlags DefaultGcc2i386Opt 22511d341caSmrg# if OSMajorVersion < 1 22611d341caSmrg# define ServerOSDefines XFree86ServerOSDefines -DXNO_SYSCONF 22711d341caSmrg# else 22811d341caSmrg# define ServerOSDefines XFree86ServerOSDefines 22911d341caSmrg# endif 23011d341caSmrg# if OSMajorVersion == 1 && OSMinorVersion >= 1 || OSMajorVersion >= 2 23111d341caSmrg# define ServerExtraSysLibs -li386 23211d341caSmrg# endif 23311d341caSmrg#else 234b94d2739Scube# define OptimizedCDebugFlags -O2 GccAliasingArgs 23511d341caSmrg# if defined(SparcArchitecture) 23611d341caSmrg# define ServerOSDefines -DDDXOSINIT 23711d341caSmrg# elif defined(AlphaArchitecture) 23811d341caSmrg# define ServerOSDefines XFree86ServerOSDefines 23911d341caSmrg# elif defined(Arm32Architecture) 24011d341caSmrg# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME 24111d341caSmrg# elif defined(PpcArchitecture) 24211d341caSmrg# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DDDXOSINIT 24311d341caSmrg# else 24411d341caSmrg# define ServerOSDefines /**/ 24511d341caSmrg# endif 24611d341caSmrg# if defined(AlphaArchitecture) 24711d341caSmrg# define ServerExtraSysLibs -lalpha 24811d341caSmrg# else 24911d341caSmrg# define ServerExtraSysLibs /**/ 25011d341caSmrg# endif 25111d341caSmrg#endif 25211d341caSmrg#ifdef i386Architecture 25311d341caSmrg# define ServerExtraDefines GccGasOption XFree86ServerDefines 25411d341caSmrg# ifndef XFree86ConsoleDefines 25511d341caSmrg# if (OSMajorVersion == 1 && ((OSMinorVersion == 3 && OSTeenyVersion >= 6) \ 25611d341caSmrg || OSMinorVersion >= 4) \ 257c5867c1cSmrg || OSMajorVersion >= 2) 25811d341caSmrg# define XFree86ConsoleDefines -DPCCONS_SUPPORT -DPCVT_SUPPORT -DWSCONS_SUPPORT 25911d341caSmrg# else 26011d341caSmrg# define XFree86ConsoleDefines -DPCCONS_SUPPORT -DPCVT_SUPPORT 26111d341caSmrg# endif 26211d341caSmrg# endif 26311d341caSmrg#elif defined(SparcArchitecture) 26411d341caSmrg# if defined(Sparc64Architecture) 26511d341caSmrg# define ServerExtraDefines XFree86ServerDefines -D_XSERVER64 26611d341caSmrg# else 26711d341caSmrg# define ServerExtraDefines XFree86ServerDefines 26811d341caSmrg# endif 26911d341caSmrg# elif defined(AlphaArchitecture) 27011d341caSmrg /* XXX for the following */ 27111d341caSmrg# define ServerExtraDefines GccGasOption XFree86ServerDefines -D_XSERVER64 27211d341caSmrg# ifndef XFree86ConsoleDefines 27311d341caSmrg# define XFree86ConsoleDefines -DWSCONS_SUPPORT -DPCCONS_SUPPORT -DPCVT_SUPPORT 27411d341caSmrg# endif 27511d341caSmrg#elif defined(AlphaArchitecture) 27611d341caSmrg# define ServerExtraDefines GccGasOption -D_XSERVER64 27711d341caSmrg#elif defined(Arm32Architecture) 27811d341caSmrg# define ServerExtraDefines GccGasOption XFree86ServerDefines 27911d341caSmrg# ifndef XFree86ConsoleDefines 28011d341caSmrg# define XFree86ConsoleDefines -DPCCONS_SUPPORT 28111d341caSmrg# endif 28211d341caSmrg#elif defined(PpcArchitecture) 28311d341caSmrg# define ServerExtraDefines GccGasOption XFree86ServerDefines 28411d341caSmrg# ifndef XFree86ConsoleDefines 28511d341caSmrg# define XFree86ConsoleDefines -DWSCONS_SUPPORT 28611d341caSmrg# endif 287b94d2739Scube#elif defined(ia64Architecture) || defined(AMD64Architecture) 288b94d2739Scube#define ServerExtraDefines GccGasOption XFree86ServerDefines -D_XSERVER64 28911d341caSmrg#else 29011d341caSmrg# define ServerExtraDefines GccGasOption 29111d341caSmrg#endif 29211d341caSmrg 29311d341caSmrg#define StandardDefines -DCSRG_BASED 29411d341caSmrg/* Citrus mb locale were added in 1.5P */ 29511d341caSmrg#if ((OSMajorVersion > 1) || \ 29611d341caSmrg (OSMajorVersion == 1 && OSMinorVersion > 5) || \ 29711d341caSmrg (OSMajorVersion == 1 && OSMinorVersion == 5 && OSTeenyVersion >= 15)) 29811d341caSmrg#define XawI18nDefines -DHAS_WCHAR_H -DHAS_WCTYPE_H -DNO_WIDEC_H 29911d341caSmrg#else 30011d341caSmrg#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC 30111d341caSmrg#endif 30211d341caSmrg 30311d341caSmrg#ifndef ExtraLibraries 30411d341caSmrg#define ExtraLibraries /**/ 30511d341caSmrg#endif 30611d341caSmrg#ifndef UseGnuMalloc 30711d341caSmrg/* 30811d341caSmrg * There is no way to map 1.4J correctly to OS*Version, so 'J' is mapped 30911d341caSmrg * to OSTeenyVersion == 9. That should be safe, since there will never 31011d341caSmrg * be a release for 1.4.9. 31111d341caSmrg */ 31211d341caSmrg# if ((OSMajorVersion > 1) || \ 31311d341caSmrg (OSMajorVersion == 1 && OSMinorVersion > 4) || \ 31411d341caSmrg (OSMajorVersion == 1 && OSMinorVersion == 4 && OSTeenyVersion > 9)) 31511d341caSmrg# define UseGnuMalloc NO 31611d341caSmrg# else 31711d341caSmrg# define UseGnuMalloc YES 31811d341caSmrg#endif 31911d341caSmrg#endif 32011d341caSmrg#ifndef GnuMallocLibrary 32111d341caSmrg#define GnuMallocLibrary -lgnumalloc 32211d341caSmrg#endif 32311d341caSmrg 32411d341caSmrg#if ((OSMajorVersion > 1) || \ 32511d341caSmrg (OSMajorVersion == 1 && OSMinorVersion > 2) || \ 32611d341caSmrg (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion > 1)) 32711d341caSmrg#ifndef HasZlib 32811d341caSmrg#define HasZlib YES 32911d341caSmrg#endif 330c5867c1cSmrg#endif 33111d341caSmrg 33211d341caSmrg#define AdmDir /var/log 33311d341caSmrg 33411d341caSmrg#define HasFlex YES 33511d341caSmrg 33611d341caSmrg/* NetBSD doesn't have gperf in the base install */ 33711d341caSmrg#define DontRebuildGperfOutput YES 33811d341caSmrg 339c5867c1cSmrg/* 34011d341caSmrg * NetBSD doesn't have perl in default system 34111d341caSmrg * you may override this in host.def if you installed perl from the packages 34211d341caSmrg */ 34311d341caSmrg#ifndef HasPerl 34411d341caSmrg#define HasPerl NO 34511d341caSmrg#endif 34611d341caSmrg 34711d341caSmrg/* 34811d341caSmrg * NetBSD doesn't have gperf in default system 34911d341caSmrg * you may override this in host.def if you installed perl from the packages 35011d341caSmrg */ 35111d341caSmrg#ifndef HasGperf 35211d341caSmrg#define HasGperf NO 35311d341caSmrg#endif 35411d341caSmrg 35511d341caSmrg/* 35611d341caSmrg * Make & install Features 35711d341caSmrg */ 35811d341caSmrg#define HasBsdMake YES 35911d341caSmrg#define CompressAllFonts YES 36011d341caSmrg#define GzipFontCompression YES 36111d341caSmrg#define DefaultUserPath /bin:/usr/bin:/usr/pkg/bin:/usr/local/bin:$(BINDIR) 36211d341caSmrg#define DefaultSystemPath /sbin:/usr/sbin:/bin:/usr/bin:$(BINDIR) 36311d341caSmrg 36411d341caSmrg#ifdef InstallCmd 36511d341caSmrg# undef InstallCmd 36611d341caSmrg# define InstallCmd /usr/bin/install 36711d341caSmrg#endif 36811d341caSmrg 36911d341caSmrg#ifndef ExtraFilesToClean 37011d341caSmrg# define ExtraFilesToClean *.core 37111d341caSmrg#endif 37211d341caSmrg 37311d341caSmrg/* 37411d341caSmrg * Documentation formatting 37511d341caSmrg */ 37611d341caSmrg#define NeqnCmd neqn -Tlatin1 37711d341caSmrg#define NroffCmd nroff -Tlatin1 37811d341caSmrg#define EqnCmd eqn -Tps 37911d341caSmrg#define HasGroff YES 38011d341caSmrg 38111d341caSmrg/* 38211d341caSmrg * To use the NetBSD Aperture driver 38311d341caSmrg */ 38411d341caSmrg#if defined(i386Architecture) 38511d341caSmrg# ifndef HasNetBSDApertureDriver 38611d341caSmrg# define HasNetBSDApertureDriver YES 38711d341caSmrg# endif 38811d341caSmrg 38911d341caSmrg/* 39011d341caSmrg * Builtin MTRR support (NetBSD 1.5Y and up) 39111d341caSmrg */ 39211d341caSmrg# if ((OSMajorVersion > 1) || \ 39311d341caSmrg (OSMajorVersion == 1 && OSMinorVersion >= 6) || \ 39411d341caSmrg (OSMajorVersion == 1 && OSMinorVersion == 5 && \ 39511d341caSmrg OSTeenyVersion >= 25)) 39611d341caSmrg# define HasMTRRBuiltin YES 39711d341caSmrg# else 39811d341caSmrg /* 39911d341caSmrg * MTRR support provided by the Aperture driver 40011d341caSmrg */ 40111d341caSmrg# if HasNetBSDApertureDriver 40211d341caSmrg# ifndef HasMTRRSupport 40311d341caSmrg# define HasMTRRSupport YES 40411d341caSmrg# endif 40511d341caSmrg# endif 40611d341caSmrg# endif /* MTRRBuiltin */ 40711d341caSmrg#endif /* i386Architecture */ 40811d341caSmrg 409b94d2739Scube#if defined(AMD64Architecture) 410e9698f98Smrg# define HasMTRRBuiltin YES 411b94d2739Scube#endif 412b94d2739Scube 41311d341caSmrg/* 41411d341caSmrg * agpgart support (NetBSD 1.5Y and up) 41511d341caSmrg */ 41611d341caSmrg#if ((OSMajorVersion > 1) || \ 41711d341caSmrg (OSMajorVersion == 1 && OSMinorVersion >= 6) || \ 41811d341caSmrg (OSMajorVersion == 1 && OSMinorVersion == 5 && \ 41911d341caSmrg OSTeenyVersion >= 25)) 42011d341caSmrg# ifndef HasAgpGart 42111d341caSmrg# define HasAgpGart YES 42211d341caSmrg# endif 42311d341caSmrg#endif 42411d341caSmrg 42511d341caSmrg/* 42611d341caSmrg * MMX, SSE and 3DNow will be autodetected. NetBSD 1.6 and up have the 42711d341caSmrg * necessary kernel and toolchain support. 42811d341caSmrg */ 42911d341caSmrg#if defined(i386Architecture) && \ 43011d341caSmrg ((OSMajorVersion > 1) || (OSMajorVersion == 1 && OSMinorVersion > 5)) 43111d341caSmrg# define HasX86Support YES 43211d341caSmrg# define HasMMXSupport YES 43311d341caSmrg# define Has3DNowSupport YES 43411d341caSmrg# define HasSSESupport YES 43511d341caSmrg#else 43611d341caSmrg# define HasX86Support NO 43711d341caSmrg# define HasMMXSupport NO 43811d341caSmrg# define Has3DNowSupport NO 43911d341caSmrg# define HasSSESupport NO 44011d341caSmrg#endif 44111d341caSmrg 44211d341caSmrg#ifndef HasCookieMaker 44311d341caSmrg# if OSMajorVersion == 1 && OSMinorVersion >= 5 || OSMajorVersion >= 2 44411d341caSmrg /* NetBSD 1.5 and later have /dev/urandom */ 44511d341caSmrg# define HasCookieMaker YES 44611d341caSmrg# define MkCookieCmd \ 44711d341caSmrg 'dd if=/dev/urandom bs=16 count=1 2>/dev/null | hexdump -e \\"%08x\\"' 44811d341caSmrg# else 44911d341caSmrg# define HasCookieMaker NO 45011d341caSmrg# endif 45111d341caSmrg#endif 45211d341caSmrg 45311d341caSmrg 45411d341caSmrg/* 45511d341caSmrg * ForceSubdirs - force make to build subdirectories 456c5867c1cSmrg * 457c5867c1cSmrg * For BSD 4.4 make 45811d341caSmrg */ 45911d341caSmrg#define ForceSubdirs(dirs) @@\ 46011d341caSmrgdirs: .EXEC @@\ 46111d341caSmrg @cd $@ ; echo "making all in $(CURRENT_DIR)/$@..."; \ @@\ 46211d341caSmrg $(MAKE) $(MFLAGS) PassCDebugFlags all @@\ 46311d341caSmrg @@\ 46411d341caSmrg.EXEC: 46511d341caSmrg 46611d341caSmrg/* 46711d341caSmrg * Man pages need to be formatted when installed, so override the default 46811d341caSmrg * imake rules. 46911d341caSmrg */ 47011d341caSmrg#define ManSuffix 1 47111d341caSmrg#define FileManSuffix 5 47211d341caSmrg#define ManSourcePath $(MANPATH)/cat 47311d341caSmrg 47411d341caSmrg#define InstallManPageLongBase(file,destdir,dest) @@\ 47511d341caSmrg @@\ 47611d341caSmrgall:: file.0 @@\ 47711d341caSmrg @@\ 47811d341caSmrgfile.0:: file.$(MANNEWSUFFIX) @@\ 47911d341caSmrg @if [ -f file.$(MANNEWSUFFIX) ]; \ @@\ 48011d341caSmrg then \ @@\ 48111d341caSmrg cat file.$(MANNEWSUFFIX) | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) > file.0; \ @@\ 48211d341caSmrg fi @@\ 48311d341caSmrg @@\ 48411d341caSmrginstall.man:: @@\ 48511d341caSmrg MakeDir($(DESTDIR)destdir) @@\ 48611d341caSmrg -@if [ -f file.0 ]; \ @@\ 48711d341caSmrg then \ @@\ 48811d341caSmrg $(INSTALL) -c $(INSTMANFLAGS) file.0 $(DESTDIR)destdir/dest.0; \@@\ 48911d341caSmrg fi @@\ 49011d341caSmrg @@\ 49111d341caSmrgclean:: @@\ 49211d341caSmrg RemoveFile(file.0) 49311d341caSmrg 49411d341caSmrg#define InstallManPageLong(file,destdir,dest) @@\ 49511d341caSmrgBuildInstallHtmlManPage(file,dest,$(MANSUFFIX)) @@\ 49611d341caSmrg @@\ 49711d341caSmrgCppManTarget(file, $(EXTRAMANDEFS)) @@\ 49811d341caSmrg @@\ 49911d341caSmrgInstallManPageLongBase(file,destdir,dest) 50011d341caSmrg 50111d341caSmrg#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ 50211d341caSmrgBuildInstallHtmlManPage(file,dest,suffix) @@\ 50311d341caSmrg @@\ 50411d341caSmrgCppManTarget(file, $(EXTRAMANDEFS)) @@\ 50511d341caSmrg @@\ 50611d341caSmrgInstallManPageLongBase(file,destdir,dest) 50711d341caSmrg 50811d341caSmrg#define InstallMultipleMan(list,dest) @@\ 50911d341caSmrginstall.man:: @@\ 51011d341caSmrg MakeDir($(DESTDIR)dest) @@\ 51111d341caSmrg case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ 51211d341caSmrg for i in list; do \ @@\ 51311d341caSmrg (MNAME=`echo $$i | cut -f1 -d.`; \ @@\ 51411d341caSmrg set -x; \ @@\ 51511d341caSmrg cat $$i | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) \ @@\ 51611d341caSmrg | $(COL) > $${MNAME}.0; \ @@\ 51711d341caSmrg $(INSTALL) -c $(INSTMANFLAGS) $${MNAME}.0 \ @@\ 51811d341caSmrg $(DESTDIR)dest/$${MNAME}.0; \ @@\ 51911d341caSmrg $(RM) $${MNAME}.0); \ @@\ 52011d341caSmrg done 52111d341caSmrg 52211d341caSmrg#define InstallMultipleManSuffix(list,dest,suff) @@\ 52311d341caSmrginstall.man:: @@\ 52411d341caSmrg MakeDir($(DESTDIR)dest) @@\ 52511d341caSmrg case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ 52611d341caSmrg for i in list; do \ @@\ 52711d341caSmrg (set -x; \ @@\ 52811d341caSmrg cat $$i.suff | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) \ @@\ 52911d341caSmrg | $(COL) > $$i.0; \ @@\ 53011d341caSmrg $(INSTALL) -c $(INSTMANFLAGS) $$i.0 \ @@\ 53111d341caSmrg $(DESTDIR)dest/$$i.0; \ @@\ 53211d341caSmrg $(RM) $$i.0 ); \ @@\ 53311d341caSmrg done 53411d341caSmrg 53511d341caSmrg#define InstallManPageAliasesBase(file,destdir,aliases) @@\ 53611d341caSmrginstall.man:: @@\ 53711d341caSmrg @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ 53811d341caSmrg for i in aliases; do \ @@\ 53911d341caSmrg (set -x; \ @@\ 54011d341caSmrg $(RM) $(DESTDIR)destdir/$$i.0;\ @@\ 54111d341caSmrg (cd $(DESTDIR)/destdir; $(LN) file.0 $$i.0);\ @@\ 54211d341caSmrg ); \ @@\ 54311d341caSmrg done 54411d341caSmrg 54511d341caSmrg#define InstallManPageAliases(file,destdir,aliases) @@\ 54611d341caSmrgInstallHtmlManPageAliases(file,aliases,$(MANSUFFIX)) @@\ 54711d341caSmrg @@\ 54811d341caSmrgInstallManPageAliasesBase(file,destdir,aliases) 54911d341caSmrg 55011d341caSmrg#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ 55111d341caSmrgInstallHtmlManPageAliases(file,aliases,suffix) @@\ 55211d341caSmrg @@\ 55311d341caSmrgInstallManPageAliasesBase(file,destdir,aliases) 55411d341caSmrg 55511d341caSmrg/* 55611d341caSmrg * Shared libraries supported starting in 1.0 on a.out platforms, 55711d341caSmrg * and on all ELF platforms. 55811d341caSmrg * 55911d341caSmrg * XXX May not be correct on NetBSD/pmax (ELF, but might not have 56011d341caSmrg * working shared libs). 56111d341caSmrg */ 56211d341caSmrg#if ((OSMajorVersion > 0) && \ 56311d341caSmrg !defined(AlphaArchitecture) && !defined(MipsArchitecture)) || \ 56411d341caSmrg UseElfFormat 56511d341caSmrg# ifndef HasSharedLibraries 56611d341caSmrg# define HasSharedLibraries YES 56711d341caSmrg# endif 56811d341caSmrg#endif 56911d341caSmrg 57011d341caSmrg#ifndef OSBinaryType 57111d341caSmrg#if UseElfFormat 57211d341caSmrg#define OSBinaryType [ELF] 57311d341caSmrg#else 57411d341caSmrg#define OSBinaryType /**/ 57511d341caSmrg#endif 57611d341caSmrg#endif 57711d341caSmrg 57811d341caSmrg#ifndef HasSharedLibraries 57911d341caSmrg#define HasSharedLibraries NO 580c5867c1cSmrg#endif 58111d341caSmrg 58211d341caSmrg/* 58311d341caSmrg * Unresolved references are fatal on NetBSD 1.5 for libGL, which is 58411d341caSmrg * built with -Bsymbolic. 58511d341caSmrg */ 58611d341caSmrg#if UseElfFormat && OSMajorVersion == 1 && OSMinorVersion == 5 58711d341caSmrg#define SharedGLReqs $(LDPRELIBS) $(XLIB) -lc 58811d341caSmrg#endif 58911d341caSmrg 59011d341caSmrg#if HasSharedLibraries 59111d341caSmrg#include <bsdLib.rules> 59211d341caSmrg#endif /* HasSharedLibraries */ 59311d341caSmrg 59411d341caSmrg/* Always build the XInput library, regardless of server support on this plattform */ 59511d341caSmrg#if !defined(BuildXInputLib) && !defined(BuildServersOnly) 59611d341caSmrg# define BuildXInputLib YES 59711d341caSmrg#endif 59811d341caSmrg 59911d341caSmrg/* 60011d341caSmrg * Definitions for the SUN server on NetBSD/sparc 60111d341caSmrg */ 60211d341caSmrg#ifdef SparcArchitecture 60311d341caSmrg#ifndef Xsun24Server 60411d341caSmrg#define Xsun24Server YES 60511d341caSmrg#endif 60611d341caSmrg#ifndef XsunServer 60711d341caSmrg#define XsunServer YES 60811d341caSmrg#endif 60911d341caSmrg#ifndef XsunMonoServer 61011d341caSmrg#define XsunMonoServer NO /* XXX: does not link */ 61111d341caSmrg#endif 61211d341caSmrg#ifndef BuildScreenSaverLibrary 61311d341caSmrg#define BuildScreenSaverLibrary YES 61411d341caSmrg#endif 61511d341caSmrg 61611d341caSmrg/* 617c5867c1cSmrg * XFree86 uses its own (more portable) database routines to speed up 61811d341caSmrg * the RGB database lookups 619c5867c1cSmrg * However, if you want to use ndbm anyway, you can set that to NO in 62011d341caSmrg * site.def 62111d341caSmrg */ 62211d341caSmrg#ifndef UseRgbTxt 62311d341caSmrg#define UseRgbTxt YES 62411d341caSmrg#endif 62511d341caSmrg#define BuildXF86VidModeExt NO 62611d341caSmrg#define BuildXF86DGA NO 62711d341caSmrg#define BuildXInputExt NO 62811d341caSmrg#endif 62911d341caSmrg 63011d341caSmrg/* 63111d341caSmrg * Definition for compiling on MIPS machines 63211d341caSmrg */ 63311d341caSmrg#ifdef MipsArchitecture 63411d341caSmrg#define PositionIndependentCFlags 63511d341caSmrg#define SharedLibraryLoadFlags -x -shared --whole-archive -soname `echo $@ | 63611d341caSmrgsed 's/\.[0-9]*$$//'` 63711d341caSmrg#define SharedXtReqs $(XONLYLIB) $(SMLIB) $(ICELIB) 63811d341caSmrg#define SharedXmuReqs $(LDPRELIB) $(XTOOLONLYLIB) $(XLIB) 63911d341caSmrg#endif 64011d341caSmrg 64111d341caSmrg/* 64211d341caSmrg * Definition for compiling on Alpha machines 64311d341caSmrg */ 64411d341caSmrg#ifdef AlphaArchitecture 64511d341caSmrg 64611d341caSmrg/* Build the shared XDM greeter on Alpha if it supports shared libs */ 64711d341caSmrg#define SharedLibXdmGreet HasSharedLibraries 64811d341caSmrg#endif 64911d341caSmrg 65011d341caSmrg/* 65111d341caSmrg * Definition for compile on macppc machines 65211d341caSmrg */ 65311d341caSmrg#ifdef PpcArchitecture 65411d341caSmrg 655b94d2739Scube# define OptimizedCDebugFlags -O2 GccAliasingArgs 65611d341caSmrg# define XkbServerDefines -DXKB_ALWAYS_USES_SOFT_REPEAT 65711d341caSmrg 65811d341caSmrg# ifndef DoLoadableServer 65911d341caSmrg# define DoLoadableServer YES 66011d341caSmrg# endif 66111d341caSmrg 66211d341caSmrg# define UseElfFormat YES 66311d341caSmrg 66411d341caSmrg#endif 66511d341caSmrg 66611d341caSmrg/* 66711d341caSmrg * Definition for compiling on VAX machines 66811d341caSmrg */ 66911d341caSmrg#ifdef VaxArchitecture 67011d341caSmrg#define BuildServer NO 67111d341caSmrg#endif 67211d341caSmrg 673c5867c1cSmrg/* 674c5867c1cSmrg * General settings for all platforms 675c5867c1cSmrg */ 67611d341caSmrg#ifndef SharedLibXdmGreet 67711d341caSmrg#define SharedLibXdmGreet NO 67811d341caSmrg#endif 67911d341caSmrg 68011d341caSmrg#ifndef BuildHtmlManPages 68111d341caSmrg#define BuildHtmlManPages NO /* We don't want HTML manpages */ 68211d341caSmrg#endif 68311d341caSmrg 68411d341caSmrg#ifndef UseSeparateConfDir 68511d341caSmrg#define UseSeparateConfDir NO /* We don't want appdefs in "/etc/X11". */ 68611d341caSmrg#endif 68711d341caSmrg 68811d341caSmrg#if defined(NetBSDArchitecture) && \ 68911d341caSmrg ((OSMajorVersion > 1) || \ 69011d341caSmrg (OSMajorVersion == 1 && OSMinorVersion > 3)) 69111d341caSmrg#define HasDevRandom YES 69211d341caSmrg#define RandomDeviceFile /dev/urandom 69311d341caSmrg#endif 694465e8200Schristos 695465e8200Schristos/* 696465e8200Schristos * Always include xorg.cf for GccAliasingArgs, 697465e8200Schristos * regardless of server support on this plattform 698465e8200Schristos */ 699465e8200Schristos#include <xorg.cf> 700