sun.cf revision 944bff83
11.380SchristosXCOMM $XdotOrg: xc/config/cf/sun.cf,v 1.9 2004/08/19 16:28:42 kem Exp $ 21.1SlukemXCOMM platform: $Xorg: sun.cf,v 1.4 2000/08/17 19:41:48 cpqbld Exp $ 31.1Slukem 41.1Slukem 51.1Slukem 61.1Slukem 71.1SlukemXCOMM platform: $XFree86: xc/config/cf/sun.cf,v 3.70 2004/01/13 02:42:51 tsi Exp $ 81.1Slukem 91.1Slukem#ifndef OSName 101.1Slukem# define OSName DefaultOSName 111.1Slukem#endif 121.1Slukem#ifndef OSMajorVersion 131.1Slukem# define OSMajorVersion DefaultOSMajorVersion 141.1Slukem#endif 151.1Slukem#ifndef OSMinorVersion 161.1Slukem# define OSMinorVersion DefaultOSMinorVersion 171.1Slukem#endif 181.1Slukem#ifndef OSTeenyVersion 191.1Slukem# define OSTeenyVersion DefaultOSTeenyVersion 201.1Slukem#endif 211.1SlukemXCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) 221.1Slukem 231.1Slukem/* For various reasons, Sun uses different settings when compiling the 241.1Slukem * X Window System packages included in Solaris than are normally used 251.1Slukem * by most people building the X.Org software releases. Sun also has 261.31Skanaoka * two different X server hierarchies in Solaris - Xsun in /usr/openwin 271.31Skanaoka * and Xorg in /usr/X11. 281.329Skochi * 291.366Srpaulo * If you want to try to match Sun's settings as closely as possible 301.31Skanaoka * add this setting to your host.def: 311.31Skanaoka * #define BuildLikeSun YES 321.335Slukem * 331.31Skanaoka * If you're trying to match the openwin directory layout as well, you'll 341.206Skanaoka * need to also add: 351.31Skanaoka * #define ProjectRoot /usr/openwin 361.31Skanaoka * otherwise it will use /usr/X11. (Note that these settings match closer 371.169Skochi * to Sun's Xorg delivery in /usr/X11 than the older X11R6.6-based delivery 381.1Slukem * in /usr/openwin though.) 391.1Slukem */ 401.363Srpaulo#ifndef BuildLikeSun 411.368Srpaulo# define BuildLikeSun NO 421.1Slukem#endif 431.255Swiz 441.335Slukem#if BuildLikeSun 451.262Schristos# ifndef ProjectRoot 461.363Srpaulo# define ProjectRoot /usr/X11 471.1Slukem# endif 481.1Slukem# ifndef DocDir 491.262Schristos# define DocDir Concat(ProjectRoot,/share/doc) 501.177Swiz# endif 511.1Slukem# ifndef ManDirectoryRoot 521.1Slukem# define ManDirectoryRoot Concat(ProjectRoot,/share/man) 531.1Slukem# endif 541.1Slukem# ifndef ManSuffix 551.1Slukem# define ManSuffix 1 561.1Slukem# endif 571.335Slukem# ifndef LibraryCCOptions 581.1Slukem# if DoSharedLib && defined(SharedLibraryCCOptions) 591.1Slukem# define LibraryCCOptions SharedLibraryCCOptions ArchLibraryCCOptions 601.1Slukem# else 611.1Slukem# define LibraryCCOptions DefaultCCOptions ArchLibraryCCOptions 621.1Slukem# endif 631.1Slukem# endif 641.252Schristos#endif 651.335Slukem 661.1Slukem/* Flag passed to makestrs in Xt build to control string array names in the 671.246Swiz * libXt headers. -solarisabinames matches those used in the libXt in 681.335Slukem * Solaris, but not in other OS'es. 691.1Slukem */ 701.217Schristos#ifndef SolarisABIFlag 711.1Slukem# if BuildLikeSun 721.252Schristos# define SolarisABIFlag -solarisabinames 731.38Swiz# else 741.252Schristos# define SolarisABIFlag /**/ 751.252Schristos# endif 761.252Schristos#endif 771.252Schristos 781.252Schristos/* 791.252Schristos * Compiler setup. This sun.cf file knows what options to use with 801.252Schristos * certain compilers, including Sun C, CenterLine C, and gcc. It 811.252Schristos * also understands how to set some of the options for various C++ 821.252Schristos * compilers, including Sun C++ and CenterLine C++. 831.252Schristos * 841.252Schristos * === C Compiler Setup ========================================== 851.252Schristos * 861.1Slukem * For SunPro C, define HasSunC to YES in site.def. 871.161Smrg * For CenterLine C, define HasCenterLineC to YES in site.def 881.264Smrg * For gcc, gcc2 or gcc3, define HasGcc, HasGcc2 or HasGcc3 to YES in site.def 891.359Srpaulo * For other compilers, define HasSunC to NO in site.def, then 901.1Slukem * provide appropriate values for the various compiler related 911.1Slukem * configuration variables used here. 921.335Slukem * 931.1Slukem * If you don't tell us which C compiler you have, we assume you have 941.61Smrg * the SunPro C compiler under Solaris 2.x, and the bundled /bin/cc 951.1Slukem * under SunOS 4.1.x 961.1Slukem * 971.1Slukem * === C++ Compiler Setup ========================================== 981.302Speter * 991.359Srpaulo * For SunPro C++, define HasSunCplusplus to YES in site.def 1001.144Sdent * For CenterLine C++, define HasCenterLineCplusplus to YES in site.def 1011.335Slukem * For Gnu g++ 2.6.x, define HasGcc2ForCplusplus to YES in site.def 1021.335Slukem * For other compilers, define HasCplusplus to YES in site.def, and 1031.1Slukem * check to see if you need to provide values for CplusplusOptions 1041.1Slukem * and/or DefaultCplusplusOptions. 1051.1Slukem * 1061.1Slukem * In any case, you may also need to set CplusplusDependIncludes. 1071.1Slukem * 1081.1Slukem * If you say you have the SunPro C++ compiler, we assume you have 1091.334Ssalo * version 3.0.x of the compiler. If you have version 4.0.x instead, 1101.1Slukem * define CplusplusCompilerMajorVersion as 4 in site.def. 1111.1Slukem * 1121.335Slukem */ 1131.1Slukem 1141.1Slukem#ifndef HasGcc3 1151.1Slukem#define HasGcc3 NO 1161.1Slukem#endif 1171.1Slukem#ifndef HasGcc2 1181.1Slukem#define HasGcc2 HasGcc3 1191.1Slukem#endif 1201.1Slukem#ifndef HasGcc 1211.1Slukem#define HasGcc HasGcc2 1221.1Slukem#endif 1231.335Slukem 1241.1Slukem#ifndef HasSunC 1251.131Sitojun# if HasCenterLineC || HasGcc || HasGcc2 || HasGcc3 || (OSMajorVersion < 5) 1261.1Slukem# define HasSunC NO 1271.1Slukem# else 1281.173Sitojun# define HasSunC YES 1291.173Sitojun# endif 1301.1Slukem#endif 1311.173Sitojun 1321.173Sitojun#if HasSunC 1331.173Sitojun# ifndef CCompilerMajorVersion 1341.173Sitojun# define CCompilerMajorVersion DefaultSunProCCompilerMajorVersion 1351.1Slukem# endif 1361.1Slukem# ifndef CCompilerMinorVersion 1371.1Slukem# define CCompilerMinorVersion DefaultSunProCCompilerMinorVersion 1381.376Smrg# endif 1391.1SlukemXCOMM SunPro C CCompilerMajorVersion./**/CCompilerMinorVersion 1401.376Smrg 1411.349Sjunyoung/* Choose some reasonable default optimizer flags based on compiler & 1421.1Slukem OS versions */ 1431.1Slukem# ifndef OptimizedCDebugFlags 1441.1Slukem# if (CCompilerMajorVersion > 5) || \ 1451.1Slukem (CCompilerMajorVersion == 5 && CCompilerMinorVersion > 2) 1461.1Slukem# define OptimizedCDebugFlags -xO4 -xbuiltin=%all -xlibmil -xstrconst ArchOptimizedFlags 1471.319Schristos# else 1481.335Slukem# define OptimizedCDebugFlags -xO4 -xstrconst ArchOptimizedFlags 1491.1Slukem# endif 1501.375Swiz# endif 1511.375Swiz# ifndef ArchOptimizedFlags 1521.1Slukem# if OSMajorVersion == 5 1531.127Ssalo# if defined(SparcArchitecture) && !defined(Sparc64Architecture) 1541.1Slukem# if OSMinorVersion > 9 /* Solaris 10 and later only run on UltraSPARC's */ 1551.38Swiz# define ArchOptimizedFlags -xarch=v8plus 1561.1Slukem# else 1571.209Swiz# define ArchOptimizedFlags -xarch=v8 1581.209Swiz# endif 1591.319Schristos# elif defined(i386Architecture) || defined(AMD64Architecture) 1601.319Schristos# if (CCompilerMajorVersion > 5) || \ 1611.1Slukem (CCompilerMajorVersion == 5 && CCompilerMinorVersion >= 7) 1621.1Slukem/* -xregs=no%frameptr is required on x86 when compiling at -xO4 or higher to 1631.1Slukem * avoid losing stack frame pointers so you can't get stack traces or debug. 1641.335Slukem * This may lose a small bit of performance, so you can override by adding 1651.1Slukem * #define FramePtrFlags -xregs=frameptr if you care about performance more 1661.335Slukem * than debuggability. 1671.335Slukem */ 1681.1Slukem# ifndef FramePtrFlags 1691.1Slukem# define FramePtrFlags -xregs=no%frameptr 1701.1Slukem# endif 1711.1Slukem# endif 1721.1Slukem# ifndef FramePtrFlags 1731.1Slukem# define FramePtrFlags /* */ 1741.1Slukem# endif 1751.1Slukem# if defined(i386Architecture) && (OSMinorVersion > 8) 1761.1Slukem /* Solaris 9 and later require Pentium or better */ 1771.1Slukem# define ArchOptimizedFlags -xpentium FramePtrFlags 1781.1Slukem# else 1791.352Sdrochner# define ArchOptimizedFlags FramePtrFlags 1801.347Staca# endif 1811.127Ssalo# endif 1821.1Slukem# endif 1831.335Slukem# ifndef ArchOptimizedFlags 1841.1Slukem# define ArchOptimizedFlags /**/ 1851.1Slukem# endif 1861.1Slukem# endif 1871.1Slukem# ifndef DefaultCDebugFlags 1881.1Slukem# define DefaultCDebugFlags OptimizedCDebugFlags 1891.1Slukem# endif 1901.1Slukem# ifndef SharedLibraryLdCmd 1911.1Slukem# define SharedLibraryLdCmd $(CC) 1921.1Slukem# endif 1931.1Slukem/* Flags for lint version included with Sun C compilers */ 1941.42Swiz# if OSMajorVersion >= 5 1951.1Slukem# ifndef LintLibFlag 1961.1Slukem# define LintLibFlag -y -o 1971.1Slukem# endif 1981.335Slukem# ifndef LintOpts 1991.1Slukem# define LintOpts -b -h -u -erroff=E_INDISTING_FROM_TRUNC2 $(LINTSECFLAG) ExtraLibraries MathLibrary -lc 2001.42Swiz# endif 2011.1Slukem# ifndef LintSecFlag 2021.43Swiz# if (CCompilerMajorVersion > 5) || \ 2031.43Swiz (CCompilerMajorVersion == 5 && CCompilerMinorVersion >= 6) 2041.1Slukem# define LintSecFlag -errsecurity=standard 2051.1Slukem# else 2061.1Slukem# define LintSecFlag /**/ 2071.335Slukem# endif 2081.335Slukem# endif 2091.1Slukem LINTSECFLAG = LintSecFlag 2101.335Slukem# ifndef LintLibReferences 2111.1Slukem# define LintLibReferences(varname,libname,libsource) @@\ 2121.373Skleink Concat(LINT,varname) = _UseCat(-L $(LINTLIBDIR) -l, -L libsource -l,libname) 2131.1Slukem# endif 2141.1Slukem 2151.1Slukem# endif /* Lint Flags for Solaris */ 2161.1Slukem 2171.1Slukem#endif /* HasSunC */ 2181.1Slukem 2191.374Spooka#ifndef ArchLibraryCCOptions 2201.374Spooka# if HasSunC && defined(SparcArchitecture) && CCompilerMajorVersion > 3 2211.1Slukem# define ArchLibraryCCOptions -xregs=no%appl 2221.1Slukem# else 2231.349Sjunyoung# define ArchLibraryCCOptions 2241.1Slukem# endif 2251.1Slukem#endif /* ArchLibraryCCOptions */ 2261.1Slukem 2271.1Slukem/* we used to have this here : 2281.1Slukem * 2291.1Slukem * #if HasSunC 2301.145Sdent * # ifndef CCompilerMajorVersion 2311.1Slukem * # define CCompilerMajorVersion 3 2321.1Slukem * # define DefaultCDebugFlags -xO3 2331.335Slukem * # define OptimizedCDebugFlags -xO3 2341.1Slukem * # endif 2351.1Slukem * #endif 2361.1Slukem */ 2371.1Slukem 2381.1Slukem#ifndef HasSunCplusplus 2391.78Senami# define HasSunCplusplus HasSunC /* ??? */ 2401.78Senami#endif 2411.1Slukem#if HasSunCplusplus 2421.1Slukem# ifndef HasCplusplus 2431.197Smrg# define HasCplusplus YES 2441.372Swiz# define OptimizedCplusplusDebugFlags -xO4 -xbuiltin=%all -xlibmil 2451.1Slukem# endif 2461.1Slukem# ifndef CplusplusCompilerMajorVersion 2471.335Slukem# ifdef DefaultSunProCplusplusCompilerMajorVersion 2481.1Slukem# define CplusplusCompilerMajorVersion DefaultSunProCplusplusCompilerMajorVersion 2491.61Smrg# else 2501.1Slukem# define CplusplusCompilerMajorVersion 3 2511.185Smrg# endif 2521.185Smrg# endif 2531.185Smrg# ifndef CplusplusCompilerMinorVersion 2541.1Slukem# ifdef DefaultSunProCplusplusCompilerMinorVersion 2551.1Slukem# define CplusplusCompilerMinorVersion DefaultSunProCplusplusCompilerMinorVersion 2561.159Smrg# else 2571.257Swiz# define CplusplusCompilerMinorVersion 0 2581.1Slukem# endif 2591.1Slukem# endif 2601.335Slukem# ifndef CplusplusLibC 2611.1Slukem# if CplusplusCompilerMajorVersion >= 5 2621.61Smrg# define CplusplusLibC -norunpath -lCrun 2631.1Slukem# endif 2641.1Slukem# endif 2651.1SlukemXCOMM SunPro C++ CplusplusCompilerMajorVersion./**/CplusplusCompilerMinorVersion 2661.328Schristos#endif 2671.335Slukem 2681.1Slukem/* we used to have this here : 2691.1Slukem * 2701.335Slukem * # ifndef CplusplusCompilerMajorVersion 2711.1Slukem * # define CplusplusCompilerMajorVersion 4 2721.1Slukem * # endif 2731.1Slukem */ 2741.1Slukem 2751.1Slukem#if HasCenterLineC 2761.1Slukem# ifndef CcCmd 2771.1Slukem# define CcCmd clcc 2781.1Slukem# endif 2791.52Swiz#endif 2801.335Slukem 2811.1Slukem#if HasCenterLineCplusplus 2821.1Slukem# ifndef HasCplusplus 2831.335Slukem# define HasCplusplus YES 2841.1Slukem# endif 2851.44Swiz# ifndef DefaultCplusplusOptions 2861.1Slukem# define DefaultCplusplusOptions -Xa 2871.44Swiz# endif 2881.44Swiz# ifndef CplusplusOptions 2891.230Sjunyoung# define CplusplusOptions -Xa 2901.174Scjep# endif 2911.174Scjep#endif 2921.1Slukem 2931.1Slukem#if OSMajorVersion < 4 || (OSMajorVersion == 4 && OSMinorVersion < 1) 2941.237Swiz/* We do not guarantee this will work */ 2951.360Swiz# define BootstrapCFlags -DNOSTDHDRS 2961.216Swiz# define StandardDefines -DNOSTDHDRS 2971.1Slukem# define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC 2981.335Slukem#endif 2991.1Slukem 3001.1Slukem#if OSMajorVersion == 4 3011.1Slukem# if OSMinorVersion == 1 3021.38Swiz# define HasPoll YES 3031.1Slukem# endif 3041.1Slukem# if OSMinorVersion > 1 || (OSMinorVersion == 1 && OSTeenyVersion > 1) 3051.1Slukem/* You ALSO need this if you have Sun ld patch 100170-06 or later to 4.1.1 */ 3061.215Slha# define SunPost411FCSLd YES 3071.369Swiz# endif 3081.1Slukem#endif 3091.1Slukem 3101.335Slukem/* The Xsun server was not building for SunOS 5.7 due to 3111.1Slukem includes of <sys/cg2reg.h>. 3121.99Slha*/ 3131.1Slukem#if OSMajorVersion < 5 3141.1Slukem# define IncludeCG2HeaderDefine -DINCLUDE_CG2_HEADER 3151.1Slukem#else 3161.117Swiz# define IncludeCG2HeaderDefine /**/ 3171.107Swiz#endif 3181.335Slukem 3191.107Swiz#if defined(i386Architecture) || defined(AMD64Architecture) 3201.335Slukem# if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 8)) 3211.1Slukem# define OSServerExtraDefines -D__SOL8__ 3221.1Slukem# endif 3231.1Slukem#endif 3241.202Smartti 3251.313Smartti#if !HasGcc 3261.359Srpaulo# if HasSunC 3271.1Slukem# if defined(AMD64Architecture) 3281.267Staca# define AsmArch amd64 3291.335Slukem# define AsmFlags -xarch=amd64 3301.1Slukem# elif defined(i386Architecture) 3311.5Smrg# define AsmArch ia32 3321.1Slukem# define AsmFlags /**/ 3331.1Slukem# elif defined(Sparc64Architecture) 3341.1Slukem# define AsmArch sparcv8plus 3351.284Sthorpej# define AsmFlags -xarch=v9 3361.379Smanu# elif defined(SparcArchitecture) 3371.379Smanu# define AsmArch sparcv8plus 3381.284Sthorpej# define AsmFlags -xarch=v8plus 3391.335Slukem# endif 3401.335Slukem# ifndef CompilerServerExtraDefines 3411.284Sthorpej# define CompilerServerExtraDefines $(SERVERSRC)/hw/xfree86/os-support/sunos/AsmArch.il 3421.284Sthorpej# endif 3431.284Sthorpej# endif 3441.355Smanu#endif 3451.284Sthorpej 3461.1Slukem#ifndef CompilerServerExtraDefines 3471.1Slukem# define CompilerServerExtraDefines /**/ 3481.1Slukem#endif 3491.1Slukem 3501.1Slukem#ifndef OSServerExtraDefines 3511.335Slukem# define OSServerExtraDefines /**/ 3521.1Slukem#endif 3531.1Slukem 3541.1Slukem#ifndef ArchServerExtraDefines 3551.1Slukem# if defined(Sparc64Architecture) || defined(AMD64Architecture) 3561.1Slukem# define ArchServerExtraDefines -D_XSERVER64 3571.1Slukem# else 3581.1Slukem# define ArchServerExtraDefines /**/ 3591.1Slukem# endif 3601.1Slukem#endif 3611.1Slukem 3621.1Slukem#define ServerOSDefines XFree86ServerOSDefines IncludeCG2HeaderDefine 3631.1Slukem#define ServerExtraDefines AllocateLocalDefines XFree86ServerDefines \ 3641.1Slukem CompilerServerExtraDefines \ 3651.1Slukem OSServerExtraDefines ArchServerExtraDefines 3661.1Slukem 3671.1Slukem#ifndef HasPerl 3681.78Senami/* Solaris 8 comes with perl. Earlier versions don't. */ 3691.1Slukem# if (OSMajorVersion == 5) && (OSMinorVersion >= 8) 3701.1Slukem# define HasPerl YES 3711.335Slukem# else 3721.1Slukem# define HasPerl NO 3731.1Slukem# endif 3741.1Slukem#endif 3751.1Slukem 3761.1Slukem#ifndef XkbServerDefines 3771.88Smrg# if BuildLikeSun 3781.241Swiz# define XkbServerDefines -DXKB_ALWAYS_USES_SOFT_REPEAT \ 3791.242Swiz -DXKM_OUTPUT_DIR='"/var/run/xkb/"' -DXKM_OUTPUT_DIR_MODE=0775 \ 3801.1Slukem -DMAKE_XKM_OUTPUT_DIR 3811.335Slukem# else 3821.1Slukem# define XkbServerDefines -DXKB_ALWAYS_USES_SOFT_REPEAT 3831.1Slukem# endif 3841.1Slukem#endif 3851.1Slukem 3861.1Slukem#if OSMajorVersion > 4 3871.1Slukem# define ConnectionFlags -DTCPCONN -DUNIXCONN -DLOCALCONN 3881.110Swiz# if HasSunC 3891.88Smrg# ifdef DefaultSunProCCompilerDir 3901.88Smrg# ifndef CcCmd 3911.1Slukem# define CcCmd DefaultSunProCCompilerDir/cc 3921.1Slukem# endif 3931.1Slukem# endif 3941.1Slukem# ifdef DefaultSunProCplusplusCompilerDir 3951.1Slukem# ifndef CplusplusCmd 3961.144Sdent# define CplusplusCmd DefaultSunProCplusplusCompilerDir/CC 3971.335Slukem# endif 3981.1Slukem# ifndef CplusplusFilt 3991.1Slukem# define CplusplusFilt DefaultSunProCplusplusCompilerDir/c++filt 4001.1Slukem# endif 4011.1Slukem# ifndef CplusplusWhatdir 4021.1Slukem# define CplusplusWhatdir DefaultSunProCplusplusCompilerDir/whatdir 4031.1Slukem# endif 4041.1Slukem# else /* DefaultSunProCplusplusCompilerDir not defined */ 4051.1Slukem# ifndef CplusplusWhatdir 4061.263Swiz# define CplusplusWhatdir whatdir 4071.327Swiz# endif 4081.338Swiz# endif /* DefaultSunProCplusplusCompilerDir */ 4091.263Swiz# ifndef CplusplusDependIncludes 4101.263Swiz# if CplusplusCompilerMajorVersion > 3 4111.335Slukem# define CplusplusDependIncludes -I`CplusplusWhatdir CC`/../include/CC 4121.263Swiz# elif CplusplusCompilerMajorVersion > 2 4131.263Swiz# define CplusplusDependIncludes -I/opt/SUNWspro/SC3.0/include/CC 4141.263Swiz# else 4151.1Slukem# define CplusplusDependIncludes -I/opt/SUNWspro/SC2.0.1/include/CC 4161.245Sdyoung# endif 4171.348Sdrochner# endif 4181.1Slukem# endif /* HasSunC */ 4191.1Slukem 4201.335Slukem# if HasSunC && (CCompilerMajorVersion < 3) 4211.1Slukem# define BootstrapCFlags -DSVR4 4221.245Sdyoung# else 4231.1Slukem# define BootstrapCFlags /* none needed */ 4241.1Slukem# endif 4251.1Slukem# ifndef XawI18nDefines 4261.1Slukem# if OSMinorVersion < 4 4271.1Slukem# define XawI18nDefines -DHAS_WCTYPE_H -DHAS_ISW_FUNCS 4281.1Slukem# else 4291.1Slukem# define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS 4301.335Slukem# endif 4311.230Sjunyoung# endif 4321.1Slukem# if OSMinorVersion > 10 4331.1Slukem# define InstallCmd /usr/gnu/bin/install 4341.1Slukem# elif OSMinorVersion > 3 4351.1Slukem# define InstallCmd /usr/ucb/install 4361.1Slukem# endif 4371.1Slukem#ifndef LargefileDefines 4381.1Slukem# if (OSMajorVersion > 5) || (OSMajorVersion == 5 && OSMinorVersion >= 6) 4391.1Slukem# define LargefileDefines -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 4401.1Slukem# else 4411.1Slukem# define LargefileDefines /* */ 4421.335Slukem# endif 4431.335Slukem#endif 4441.230Sjunyoung# ifdef AMD64Architecture 4451.1Slukem# define StandardDefines -Dsun -DSVR4 -D__EXTENSIONS__ -D__amd64 4461.1Slukem# define ToolkitStringsABIOptions -intelabi SolarisABIFlag 4471.1Slukem# elif defined(i386Architecture) 4481.1Slukem# if (OSMajorVersion < 4) || ((OSMajorVersion == 5) && (OSMinorVersion <= 5)) 4491.1Slukem# define StandardDefines -Dsun -Di386 -DSVR4 -D__EXTENSIONS__ -D__i386 \ 4501.341Sjdolecek -D__SOL64__ LargefileDefines 4511.333Sjlam# else 4521.1Slukem# define StandardDefines -Dsun -Di386 -DSVR4 -D__EXTENSIONS__ -D__i386 \ 4531.1Slukem LargefileDefines 4541.335Slukem# endif 4551.1Slukem# define ToolkitStringsABIOptions -intelabi SolarisABIFlag 4561.1Slukem# else 4571.1Slukem# define StandardDefines -Dsun -Dsparc -DSVR4 -D__EXTENSIONS__ LargefileDefines 4581.1Slukem# define ToolkitStringsABIOptions -sparcabi SolarisABIFlag 4591.1Slukem# endif 4601.38Swiz/* Socket support was in separate libraries before 5.12, then merged to libc */ 4611.1Slukem# if (OSMajorVersion == 5) && (OSMinorVersion < 12) 4621.1Slukem# define ExtraLibraries -lsocket -lnsl 4631.1Slukem# else 4641.1Slukem# define ExtraLibraries /**/ 4651.1Slukem# endif 4661.335Slukem# define HasWeakSymbols YES 4671.335Slukem# if OSMinorVersion > 1 4681.1Slukem# ifndef ThreadedX 4691.1Slukem# define ThreadedX YES 4701.1Slukem# endif 4711.1Slukem# define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXUSE_NETDB_R_API 4721.1Slukem/* Thread support was in separate library before 5.10, then merged to libc */ 4731.1Slukem# if (OSMajorVersion == 5) && (OSMinorVersion < 10) 4741.1Slukem# if HasSunC && CCompilerMajorVersion > 2 4751.312Saymeric# define ThreadsCompileFlags -mt 4761.1Slukem# else 4771.1Slukem# define ThreadsLibraries -lthread 4781.1Slukem# endif 4791.335Slukem# if HasSunCplusplus && CplusplusCompilerMajorVersion > 3 4801.230Sjunyoung# define ThreadsCplusplusCompileFlags -mt 4811.5Smrg# else 4821.1Slukem# define ThreadsCplusplusLibraries -lthread 4831.312Saymeric# endif 4841.312Saymeric# define SystemMTDefines -D_REENTRANT 4851.312Saymeric# else 4861.1Slukem /* Solaris 10 & later */ 4871.1Slukem# define SystemMTDefines -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS 4881.163Sdrochner# endif 4891.149Sfredb# define CplusplusSystemMTDefines SystemMTDefines 4901.1Slukem# endif /* OSMinorVersion > 1 */ 4911.1Slukem# ifndef UseExportLists 4921.335Slukem# if (OSMinorVersion > 4) && !HasGcc2 4931.230Sjunyoung# define UseExportLists YES 4941.1Slukem# else 4951.1Slukem# define UseExportLists NO 4961.1Slukem# endif 4971.1Slukem# endif 4981.1Slukem# if OSMinorVersion > 5 /* Solaris 2.6 and later */ 4991.1Slukem# define HasSnprintf YES 5001.293Schristos# endif 5011.293Schristos# if OSMinorVersion > 7 /* Solaris 8 and later */ 5021.370Swiz# define HasStrlcat YES 5031.351Sjunyoung# define HasStrcasecmp YES 5041.276Swiz# define HasVarRun YES 5051.335Slukem# endif 5061.276Swiz# if OSMinorVersion > 9 /* Solaris 10 and later */ 5071.276Swiz# define HasSetenv YES 5081.276Swiz# define HasGetpeerucred YES 5091.292Sthorpej# define HasGetoptLong YES 5101.292Sthorpej# define DlLibrary -lc /* dlopen() is in libc in Solaris 10 */ 5111.276Swiz# endif 5121.1Slukem# define HasVFork NO 5131.322Schristos# define HasDlopen YES 5141.358Sgrant# define InstallXloadSetGID NO /* libkstat doesn't require gid kmem */ 5151.1Slukem# define InstKmemFlags -g sys -m 2711 5161.1Slukem# define ShLibIncludeFile <sunLib.tmpl> 5171.335Slukem# define LinkerRuntimeLibraryPathFlag(path) Concat(-R,path) 5181.1Slukem# define RpathLoadFlags LinkerRuntimeLibraryPathFlag($(USRLIBDIRPATH)) 5191.298Sitojun/* 5201.1Slukem * Set flags for position independent code before including sv4Lib.rules 5211.1Slukem * if the compiler in use doesn't use standard SVR4 flags 5221.1Slukem */ 5231.1Slukem# if HasSunC || HasCenterLineC 5241.1Slukem# define PositionIndependentCFlags -Kpic 5251.1Slukem# define LargePositionIndependentCFlags -KPIC 5261.1Slukem# ifdef Sparc64Architecture 5271.1Slukem# define LargePICTable YES 5281.279Schristos# endif 5291.279Schristos# endif 5301.279Schristos# if HasSunCplusplus || HasCenterLineCplusplus 5311.279Schristos# define PositionIndependentCplusplusFlags -pic 5321.280Schristos# define LargePositionIndependentCplusplusFlags -PIC 5331.280Schristos# endif 5341.1Slukem/* As is done in sco5.cf, we lie and say Solaris has NCURSES, since 5351.1Slukem * the system curses is close enough for xorgcfg's purposes. xorgcfg 5361.380Schristos * should not depend on the NCURSES package but rather on a "capable curses", 5371.380Schristos * of which NCURSES is just one. 5381.1Slukem */ 5391.1Slukem#define HasNCurses YES 5401.335Slukem#define NCursesLibName -lcurses 5411.1Slukem#else /* not OSMajorVersion > 4 */ 5421.310Schristos#define InstKmemFlags -g kmem -m 2711 5431.1Slukem#include <sunLib.rules> 5441.380Schristos#endif /* OSMajorVersion > 4 (else) */ 5451.380Schristos 5461.1Slukem/* Solaris 10 includes FreeType already. It's also available in GNOME 2.0 for 5471.19Swiz * Solaris 8 & 9, and in Solaris 9 4/03 and later, but there's no easy way to 5481.19Swiz * detect that in imake, so users of those releases who want to use the 5491.19Swiz * installed FreeType instead of the one in this tree should copy the following 5501.19Swiz * two settings to their host.def. Those who want to use the in-tree copy 5511.19Swiz * regardless of OS version should add "#define HasFreetype2 NO" to host.def. 5521.335Slukem */ 5531.19Swiz#ifndef HasFreetype2 5541.19Swiz# if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 10)) 5551.19Swiz# define HasFreetype2 YES 5561.19Swiz# ifndef Freetype2Dir 5571.19Swiz# define Freetype2Dir /usr/sfw 5581.19Swiz# endif 5591.19Swiz# else 5601.1Slukem# define HasFreetype2 NO 5611.1Slukem# endif 5621.1Slukem#endif 5631.1Slukem 5641.1Slukem#ifndef HasExpat 5651.335Slukem# if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 10)) 5661.1Slukem# define HasExpat YES 5671.1Slukem# ifndef ExpatDir 5681.1Slukem# define ExpatDir /usr/sfw 5691.1Slukem# endif 5701.1Slukem# else 5711.1Slukem# define HasExpat NO 5721.1Slukem# endif 5731.1Slukem#endif 5741.1Slukem 5751.335Slukem/* Solaris 10 includes fontconfig, but not the fcprivate.h header needed by 5761.1Slukem * Xft1 library. 5771.127Ssalo */ 5781.1Slukem#ifndef HasFontconfig 5791.1Slukem# define HasFontconfig NO 5801.1Slukem#endif 5811.1Slukem 5821.1Slukem/* libpng was in /usr/sfw/lib on Solaris 9, moved to /usr/lib in Solaris 10 */ 5831.228Sitojun#ifndef HasLibpng 5841.340Speter# if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 9)) 5851.335Slukem# define HasLibpng YES 5861.228Sitojun# if !defined(LibpngDir) && ((OSMajorVersion == 5) && (OSMinorVersion == 9)) 5871.228Sitojun# define LibpngDir /usr/sfw 5881.335Slukem# endif 5891.317Syamt# else 5901.228Sitojun# define HasLibpng NO 5911.228Sitojun# endif 5921.228Sitojun#endif 5931.228Sitojun 5941.256Syamt#ifndef HasZlib 5951.228Sitojun# if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 8)) 5961.1Slukem# define HasZlib YES 5971.354Srpaulo# else 5981.359Srpaulo# define HasZlib NO 5991.1Slukem# endif 6001.1Slukem#endif 6011.335Slukem 6021.1Slukem#ifndef TroffCmd 6031.127Ssalo# if !(HasGroff) 6041.1Slukem# define TroffCmd troff -Tpost 6051.1Slukem# endif 6061.1Slukem#endif 6071.289Scube 6081.359Srpaulo#define BuildLibPathVar LD_LIBRARY_PATH 6091.1Slukem#define HasNdbm YES 6101.1Slukem#define HasShm YES 6111.349Sjunyoung#define HasSecureRPC YES 6121.1Slukem#define SetTtyGroup YES 6131.1Slukem#define HasPutenv YES 6141.127Ssalo#define HasMkstemp YES 6151.1Slukem#if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 8)) 6161.1Slukem#define HasDevRandom YES /* /dev/random is in Solaris 8 patches */ 6171.1Slukem#define PollDevRandom YES /* /dev/random is poll()able on Solaris */ 6181.1Slukem#endif 6191.1Slukem#if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 9)) 6201.1Slukem# define HasIssetugid YES 6211.1Slukem#endif 6221.1Slukem#if defined(Sun3Architecture) || defined(SparcArchitecture) || defined(Sparc64Architecture) 6231.289Scube# ifndef Xsun24Server 6241.289Scube# define Xsun24Server NO /* color, mono, multiple depths */ 6251.1Slukem# endif 6261.1Slukem# ifndef XsunServer 6271.1Slukem# define XsunServer NO /* color and mono, 8 bit only */ 6281.1Slukem# endif 6291.1Slukem# ifndef XsunMonoServer 6301.1Slukem# define XsunMonoServer NO /* monochrome only */ 6311.1Slukem# endif 6321.335Slukem# ifndef XorgServer 6331.1Slukem# define XorgServer (!(Xsun24Server || XsunServer || XsunMonoServer)) 6341.1Slukem# endif 6351.1Slukem# undef BuildXF86DRI 6361.1Slukem# define BuildXF86DRI NO 6371.1Slukem# if (OSMajorVersion > 4) 6381.182Staca# if !defined(AsOutputArchSize) || \ 6391.182Staca ((AsOutputArchSize != 32) && (AsOutputArchSize != 64)) 6401.14Sperry# undef AsOutputArchSize 6411.14Sperry# define AsOutputArchSize 32 6421.335Slukem# endif 6431.1Slukem# ifndef AsVISOption 6441.14Sperry# if AsOutputArchSize == 32 6451.1Slukem# ifdef UseGas 6461.1Slukem# define AsVISOption -Av8plusa 6471.1Slukem# else 6481.1Slukem# define AsVISOption -xarch=v8plusa 6491.1Slukem# endif 6501.201Schristos# else 6511.255Swiz# ifdef UseGas 6521.1Slukem# define AsVISOption -Av9a 6531.1Slukem# else 6541.335Slukem# define AsVISOption -xarch=v9a 6551.1Slukem# endif 6561.127Ssalo# endif 6571.1Slukem# endif 6581.1Slukem# endif 6591.1Slukem#endif /* SPARC or Sun3/M68k */ 6601.201Schristos 6611.201Schristos#if OSMajorVersion >= 4 6621.1Slukem#define HasUsableFileMmap YES 6631.1Slukem#endif 6641.1Slukem 6651.359Srpaulo#ifndef UseDeprecatedKeyboardDriver 6661.1Slukem#define UseDeprecatedKeyboardDriver YES 6671.1Slukem#endif 6681.335Slukem 6691.1Slukem#if HasGcc 6701.1Slukem# if OSMajorVersion > 4 6711.1Slukem# ifndef DefaultCCOptions 6721.1Slukem# ifdef UseInstalled 6731.1Slukem# define DefaultCCOptions -DNO_ASM 6741.301Satatat# elif OSMinorVersion > 6 6751.311Swiz# define DefaultCCOptions -DNO_ASM GccWarningOptions 6761.1Slukem# elif OSMinorVersion > 3 6771.1Slukem# define DefaultCCOptions -DNO_ASM GccWarningOptions -ansi -pedantic 6781.335Slukem# else 6791.1Slukem# define DefaultCCOptions -DNO_ASM 6801.127Ssalo# endif 6811.1Slukem# endif 6821.1Slukem# endif 6831.1Slukem# if HasGcc2 6841.1Slukem# ifndef CcCmd 6851.1Slukem# define CcCmd gcc 6861.1Slukem# endif 6871.1Slukem# ifndef AsCmd 6881.1Slukem# define AsCmd CcCmd -c -x assembler 6891.1Slukem# endif 6901.144Sdent# ifndef OptimizedCDebugFlags 6911.144Sdent# ifdef i386Architecture 6921.335Slukem# define OptimizedCDebugFlags DefaultGcc2i386Opt 6931.1Slukem# elif defined(AMD64Architecture) 6941.1Slukem# define OptimizedCDebugFlags DefaultGcc2AMD64Opt 6951.1Slukem# else 6961.1Slukem# define OptimizedCDebugFlags -O2 6971.1Slukem# endif 6981.1Slukem# endif 6991.1Slukem# if !defined(SharedLibraryLoadFlags) && !defined(SharedLibraryLdCmd) 7001.1Slukem# if OSMajorVersion == 5 && OSMinorVersion > 6 && defined(i386Architecture) 7011.245Sdyoung /* This is to work around what appears to be a PIC bug in some gcc/egcs 7021.348Sdrochner versions that shows up with the Solaris 7/x86 <ctype.h>. */ 7031.1Slukem# define SharedLibraryLdCmd $(LD) 7041.1Slukem# define SharedLibraryLoadFlags -G -z textwarn 7051.335Slukem# else 7061.1Slukem# define SharedLibraryLdCmd $(CC) 7071.1Slukem# define SharedLibraryLoadFlags -shared -z text 7081.1Slukem# endif 7091.2Swiz# endif 7101.1Slukem# else 7111.1Slukem# define SharedLibraryCcCmd cc 7121.1Slukem# define ExtraLoadFlags -B/usr/bin/ 7131.1Slukem# define AllocateLocalDefines /**/ 7141.1Slukem 7151.1Slukem.c.o: 7161.50Senami ClearmakeOSName $(CC) -c $(CFLAGS) $*.c 7171.335Slukem 7181.1Slukem# endif /* HasGcc2 (else) */ 7191.1Slukem 7201.1Slukem#else /* not HasGcc */ 7211.1Slukem 7221.1Slukem# define AllocateLocalDefines -DINCLUDE_ALLOCA_H 7231.1Slukem 7241.1Slukem/* Set up compiler-dependent options for Sun C */ 7251.144Sdent/* 7261.144Sdent * To build 64-bit binaries define Sparc64Architecture or AMD64Architecture 7271.335Slukem * in your site.def or host.def file. 7281.1Slukem */ 7291.1Slukem# if HasSunC 7301.1Slukem# ifdef Sun3Architecture 7311.1Slukem# ifndef DefaultCCOptions 7321.1Slukem# define DefaultCCOptions -f68881 -pipe 7331.232Swiz# endif 7341.271Swiz# else /* not defined(Sun3Architecture) */ 7351.1Slukem# if OSMajorVersion < 5 7361.1Slukem# ifndef DefaultCCOptions 7371.335Slukem# define DefaultCCOptions -pipe 7381.1Slukem# endif 7391.1Slukem# else /* OSMajorVersion >= 5*/ 7401.1Slukem# ifndef DefaultXArchOptions 7411.38Swiz# if ((CCompilerMajorVersion > 5) || \ 7421.38Swiz (CCompilerMajorVersion == 5) && (CCompilerMinorVersion >= 9)) 7431.1Slukem /* Sun Studio 12.0 (cc 5.9) or later */ 7441.1Slukem# if (defined(Sparc64Architecture) || defined(AMD64Architecture)) 7451.250Ssoren# define DefaultXArchOptions -m64 7461.377Srpaulo# else 7471.1Slukem# define DefaultXArchOptions -m32 7481.1Slukem# endif 7491.335Slukem# else 7501.1Slukem# ifdef Sparc64Architecture 7511.1Slukem# define DefaultXArchOptions -xarch=v9 7521.1Slukem# elif defined(AMD64Architecture) 7531.1Slukem# define DefaultXArchOptions -xarch=generic64 7541.1Slukem# else 7551.1Slukem# define DefaultXArchOptions /* */ 7561.1Slukem# endif 7571.1Slukem# endif 7581.1Slukem# ifndef DefaultCCOptions 7591.1Slukem# define DefaultCCOptions -Xa -v DefaultXArchOptions -z lazyload -z combreloc -xstrconst -xildoff 7601.1Slukem# endif 7611.1Slukem# ifndef DefaultCplusplusOptions 7621.1Slukem# define DefaultCplusplusOptions DefaultXArchOptions -z lazyload -z combreloc -xildoff 7631.1Slukem# endif 7641.1Slukem# ifndef SharedLibraryLoadFlags 7651.335Slukem# define SharedLibraryLoadFlags -G DefaultXArchOptions -z text $(EXTRA_LOAD_FLAGS) 7661.1Slukem# endif 7671.1Slukem# endif 7681.1Slukem# endif 7691.1Slukem# endif 7701.1Slukem# endif 7711.367Skleink 7721.367Skleink/* Set compiler-dependent options for CenterLine C */ 7731.1Slukem 7741.1Slukem# if HasCenterLineC 7751.349Sjunyoung# ifndef DefaultCCOptions 7761.1Slukem# define DefaultCCOptions -Xt -w1 -DANSICPP -U__HIGHC__ 7771.1Slukem# endif 7781.1Slukem# ifndef NeedConstPrototypes 7791.1Slukem# define NeedConstPrototypes YES 7801.1Slukem# endif 7811.1Slukem# ifndef NeedNestedPrototypes 7821.1Slukem# define NeedNestedPrototypes YES 7831.1Slukem# endif 7841.104Swiz# ifndef NeedVarargsPrototypes 7851.1Slukem# define NeedVarargsPrototypes YES 7861.1Slukem# endif 7871.335Slukem# endif 7881.1Slukem 7891.1Slukem 7901.1Slukem#endif /* HasGcc (else) */ 7911.1Slukem 7921.335Slukem#if OSMajorVersion < 5 7931.335Slukem# define SharedAllocateLocalDefines -DINCLUDE_ALLOCA_H 7941.335Slukem# define LibraryCCOptions /* don't want special floating point */ 7951.335Slukem#else /* OSMajorVersion >= 5, i.e. Solaris 2.0 & later */ 7961.349Sjunyoung/* Only load libraries when needed on Solaris 7 & later */ 7971.335Slukem# if OSMinorVersion >= 7 7981.335Slukem# define LazyLoadFlag -z lazyload -z combreloc 7991.335Slukem# else 8001.228Sitojun# define LazyLoadFlag /* */ 8011.228Sitojun# endif 8021.228Sitojun/* Link with extra mapfiles for some performance & security enhancements */ 8031.228Sitojun#ifndef MapfileFlag 8041.228Sitojun# if HasSunC 8051.365Swiz# define MapfileFlag -M 8061.365Swiz# else 8071.365Swiz# define MapfileFlag -Wl,-M, 8081.365Swiz# endif 8091.365Swiz#endif 8101.365Swiz#ifndef Mapfile_BssAlign 8111.365Swiz# if OSMinorVersion >= 9 8121.365Swiz# define Mapfile_BssAlign $(MAPFILEFLAG)/usr/lib/ld/map.bssalign 8131.365Swiz# else 8141.365Swiz# define Mapfile_BssAlign /**/ 8151.365Swiz# endif 8161.1Slukem#endif 8171.307Stron#ifndef Mapfile_PageAlign 8181.305Stron# if OSMinorVersion >= 10 8191.349Sjunyoung# define Mapfile_PageAlign $(MAPFILEFLAG)/usr/lib/ld/map.pagealign 8201.1Slukem# else 8211.335Slukem# define Mapfile_PageAlign /**/ 8221.349Sjunyoung# endif 8231.1Slukem#endif 8241.1Slukem#ifndef Mapfile_NoExStack 8251.1Slukem# if OSMinorVersion >= 9 8261.60Stron# define Mapfile_NoExStack $(MAPFILEFLAG)/usr/lib/ld/map.noexstk 8271.1Slukem# else 8281.1Slukem# define Mapfile_NoExStack /**/ 8291.305Stron# endif 8301.1Slukem#endif 8311.1Slukem#ifndef Mapfile_NoExData 8321.1Slukem# if defined(SparcArchitecture) 8331.349Sjunyoung/* SPARC architecture requires PLT section in .data be executable, so 8341.1Slukem we can only make .bss, not all of .data no-exec on SPARC */ 8351.1Slukem# define Mapfile_NoExData /**/ 8361.335Slukem# else 8371.1Slukem# if OSMinorVersion >= 10 8381.1Slukem# define Mapfile_NoExData $(MAPFILEFLAG)/usr/lib/ld/map.noexdata 8391.1Slukem# else 8401.1Slukem# define Mapfile_NoExData /**/ 8411.378Syamt# endif 8421.378Syamt# endif 8431.1Slukem#endif 8441.1Slukem MAPFILEFLAG = MapfileFlag 8451.1Slukem MAPFILES_FOR_ALL = Mapfile_PageAlign Mapfile_NoExData 8461.1SlukemMAPFILES_FOR_PROGS = Mapfile_BssAlign Mapfile_NoExStack 8471.1Slukem/* ExtraLoadFlags apply to all binaries - programs & libraries */ 848# ifndef ExtraLoadFlags 849# define ExtraLoadFlags LazyLoadFlag $(MAPFILES_FOR_ALL) 850# endif 851/* ExtraLoadOptions only apply to programs */ 852# ifndef ExtraLoadOptions 853# define ExtraLoadOptions -B direct $(MAPFILES_FOR_PROGS) 854# endif 855#endif /* OSMajorVersion < 5 */ 856 857/* 64-bit build support */ 858#ifndef Solaris64bitSubdir 859# ifdef Sparc64Architecture 860# define Solaris64bitSubdir sparcv9 861# elif defined(AMD64Architecture) 862# define Solaris64bitSubdir amd64 863# endif 864#endif 865 866#ifdef Solaris64bitSubdir 867# define LibDirName Concat3(lib,/,Solaris64bitSubdir) 868#endif 869 870#if ((OSMajorVersion == 5) && (OSMinorVersion <= 11)) 871/* System V man page sections */ 872# ifndef FileManSuffix 873# define FileManSuffix 4 /* use just one tab or cpp will die */ 874# endif 875# ifndef MiscManSuffix 876# define MiscManSuffix 5 /* use just one tab or cpp will die */ 877# endif 878# ifndef DriverManSuffix 879# define DriverManSuffix 7 /* use just one tab or cpp will die */ 880# endif 881# ifndef AdminManSuffix 882# define AdminManSuffix 1m /* use just one tab or cpp will die */ 883# endif 884#else 885/* Bell Labs / BSD man page sections */ 886# ifndef FileManSuffix 887# define FileManSuffix 5 /* use just one tab or cpp will die */ 888# endif 889# ifndef MiscManSuffix 890# define MiscManSuffix 7 /* use just one tab or cpp will die */ 891# endif 892# ifndef DriverManSuffix 893# define DriverManSuffix 4 /* use just one tab or cpp will die */ 894# endif 895# ifndef AdminManSuffix 896# define AdminManSuffix 8 /* use just one tab or cpp will die */ 897# endif 898#endif 899 900#if OSMajorVersion > 4 901# include <svr4.cf> 902#endif 903 904#ifndef ManKeywordsTarget 905# define ManKeywordsTarget(manpath) @@\ 906man_keywords:: @@\ 907 catman -M $(DESTDIR)manpath -w 908#endif 909 910#if !defined(UsePamLibrary) 911# if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 4)) 912# define UsePamLibrary YES 913# endif 914#endif 915 916/* PAM appeared in SunOS 5.6 */ 917#if !defined(HasPam) 918# if (OSMajorVersion > 5) || (OSMajorVersion == 5 && OSMinorVersion >= 6) 919# define HasPam YES 920# endif 921#endif 922 923#ifndef PamLibraries 924#define PamLibraries -lpam 925#endif 926 927#ifndef HasMotif 928/* Solaris's Motif depends on Solaris libX11 and won't work with libX11 built 929 * from this tree, so only use it when using libX11 from outside the tree. 930 */ 931# define HasMotif (defined(UseInstalled) || UseInstalledX11) 932# define MotifDir /usr/dt 933#endif /* !HasMotif */ 934#ifndef HasMotif2 935/* Solaris's Motif2 version is broken and misses XmPrintShell 936 * (see http://xprint.mozdev.org/bugs/show_bug.cgi?id=1366) */ 937# define HasMotif2 NO 938#endif /* !HasMotif2 */ 939 940#define MotifDefines \ 941 -DNO_ISDIR -DNO_REGCOMP -DNO_ALLOCA -DBOGUS_MB_MAX -DNO_CONST 942#define PamUnixDefines -DPAM_NIS 943#define TtLargePICTable YES 944#define DtSvcDefines -DXK_MISCELLANY -DMULTIBYTE -DNO_REGCOMP 945#define DtSearchDefines -DI18N_MSG DtSvcDefines 946#define DtWidgetDefines DtSearchDefines 947#define DtPrintDefines DtSearchDefines 948 949#define baseDtMailDefines \ 950 -DSunOS=OSMajorVersion\#\#OSMinorVersion -DMMAP_NORESERVE -DSPRO_V2 951#if !defined(i386Architecture) && !defined(AMD64Architecture) 952# define DtMailDefines baseDtMailDefines 953#else 954# define DtMailDefines -DBIG_ENDIAN baseDtMailDefines 955#endif 956 957#define ArchitectureDefines -DSUN_ARCHITECTURE 958 959#define TtClientExtraLibs ExtraLibraries -ldl -lintl 960 961#define ExportListGenSource elistgen.sun 962#define ShlibExportListOpt(filename) -M filename 963 964#define CdeProjectDefines \ 965 -DMULTIBYTE -DNLS16 -DMESSAGE_CAT -D_XOPEN_VERSION=4 \ 966 -D_XOPEN_SOURCE -D__EXTENSIONS__ \ 967 -DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion 968 969 970/* 971 * Turn off HTML manpages like we do under NetBSD. 972 */ 973#ifndef BuildHtmlManPages 974#define BuildHtmlManPages NO 975#endif 976 977/* 978 * Turn off separate configuration directories. 979 */ 980#ifndef UseSeparateConfDir 981#define UseSeparateConfDir NO 982#endif 983 984/* Hackery for building modules as Solaris shared objects with dependencies */ 985#if MakeDllModules && DoLoadableServer 986 987/* If you change this, you will need to change find-deps.pl to match */ 988#define DlModuleDependencyName(module) Concat(module,_deps) 989 990#define DlModuleTarget(module,deplist,modlist) @@\ 991DepDynamicModuleTarget(module,deplist DlModuleDependencyName(module),modlist LazyLoadFlag `cat DlModuleDependencyName(module)`) @@\ 992 @@\ 993DlModuleDependencyName(module): @@\ 994 touch $@ @@\ 995 @@\ 996clean:: @@\ 997 RemoveFile(DlModuleDependencyName(module)) 998 999#define ObjectModuleTarget(module,objects) @@\ 1000DlModuleTarget(Concat(module,_drv.so), objects, objects) 1001 1002#define LibraryModuleTarget(module,objects) @@\ 1003NormalLibraryTarget(module, objects) @@\ 1004DlModuleTarget(Concat3(lib,module,.so), objects, objects) 1005 1006#define DepLibraryModuleTarget(module,deplist,objects) @@\ 1007NormalDepLibraryTarget(module, deplist, objects) @@\ 1008DlModuleTarget(Concat3(lib,module,.so), deplist, objects) 1009 1010#endif 1011