111d341caSmrgXCOMM $XFree86: xc/config/cf/ServerLib.tmpl,v 3.0tsi Exp $ 211d341caSmrg/* 311d341caSmrg * Server Library imakefile info - this contains any special 411d341caSmrg * redefinitions, etc. that Imakefiles in the various server library 511d341caSmrg * subtrees will need. 611d341caSmrg * 711d341caSmrg * Before including this, you must set the following boolean variables: 811d341caSmrg * DoSharedLib, DoNormalLib, DoDebugLib, DoProfileLib 911d341caSmrg * 1011d341caSmrg */ 1111d341caSmrg 1211d341caSmrg#ifndef DoNormalLib 1311d341caSmrg#define DoNormalLib YES 1411d341caSmrg#endif 1511d341caSmrg 1611d341caSmrg#ifndef LibraryDefines 1711d341caSmrg#define LibraryDefines StandardDefines 1811d341caSmrg#endif 1911d341caSmrg#ifndef LibraryCDebugFlags 2011d341caSmrg#define LibraryCDebugFlags DefaultCDebugFlags 2111d341caSmrg#endif 2211d341caSmrg#ifndef SeparateSharedCompile 2311d341caSmrg#define SeparateSharedCompile YES 2411d341caSmrg#endif 2511d341caSmrg#ifndef SharedServerLibraryDef 2611d341caSmrg#define SharedServerLibraryDef $(__NOOP__) 2711d341caSmrg#endif 2811d341caSmrg 2911d341caSmrg#ifndef LibraryCcCmd 3011d341caSmrg#if DoSharedLib && defined(SharedLibraryCcCmd) 3111d341caSmrg#define LibraryCcCmd SharedLibraryCcCmd 3211d341caSmrg#else 3311d341caSmrg#define LibraryCcCmd CcCmd 3411d341caSmrg#endif 3511d341caSmrg#endif 3611d341caSmrg#ifndef LibraryCCOptions 3711d341caSmrg#if DoSharedLib && defined(SharedLibraryCCOptions) 3811d341caSmrg#define LibraryCCOptions SharedLibraryCCOptions 3911d341caSmrg#else 4011d341caSmrg#define LibraryCCOptions DefaultCCOptions 4111d341caSmrg#endif 4211d341caSmrg#endif 4311d341caSmrg 4411d341caSmrg#if DoDebugLib 4511d341caSmrg#define _DebuggedLibMkdir() LibMkdir(debugger) 4611d341caSmrg#define _DebuggedObjCompile(options) DebuggedLibObjCompile(options) 4711d341caSmrg#define _DebuggedCleanDir() LibCleanDir(debugger) 4811d341caSmrg#else 4911d341caSmrg#define _DebuggedLibMkdir() $(_NULLCMD_) 5011d341caSmrg#define _DebuggedObjCompile(options) $(_NULLCMD_) 5111d341caSmrg#define _DebuggedCleanDir() $(_NULLCMD_) 5211d341caSmrg#endif 5311d341caSmrg 5411d341caSmrg#if DoProfileLib 5511d341caSmrg#define _ProfiledLibMkdir() LibMkdir(profiled) 5611d341caSmrg#define _ProfiledObjCompile(options) ProfiledLibObjCompile(options) 5711d341caSmrg#define _ProfiledCleanDir() LibCleanDir(profiled) 5811d341caSmrg#else 5911d341caSmrg#define _ProfiledLibMkdir() $(_NULLCMD_) 6011d341caSmrg#define _ProfiledObjCompile(options) $(_NULLCMD_) 6111d341caSmrg#define _ProfiledCleanDir() $(_NULLCMD_) 6211d341caSmrg#endif 6311d341caSmrg 6411d341caSmrg#if !DoNormalLib 6511d341caSmrg#define _NormalLibMkdir() $(_NULLCMD_) 6611d341caSmrg#define _NormalObjCompile(options) $(_NULLCMD_) 6711d341caSmrg#define _NormalCleanDir() $(_NULLCMD_) 6811d341caSmrg#else 6911d341caSmrg#if DoSharedLib && SeparateSharedCompile 7011d341caSmrg#define _NormalLibMkdir() LibMkdir(unshared) 7111d341caSmrg#define _NormalObjCompile(options) UnsharedLibObjCompile(options) 7211d341caSmrg#define _NormalCleanDir() LibCleanDir(unshared) 7311d341caSmrg#else 7411d341caSmrg#define _NormalLibMkdir() $(_NULLCMD_) 7511d341caSmrg#define _NormalObjCompile(options) NormalLibObjCompile(options) 7611d341caSmrg#define _NormalCleanDir() $(_NULLCMD_) 7711d341caSmrg#endif 7811d341caSmrg#endif 7911d341caSmrg 8011d341caSmrg#if !DoSharedLib || (DoNormalLib && !SeparateSharedCompile) 8111d341caSmrg#define _SharedObjCompile(options) $(_NULLCMD_) 8211d341caSmrg#else 8311d341caSmrg#if SeparateSharedCompile 8411d341caSmrg#define _SharedObjCompile(options) NormalSharedLibObjCompile(options) 8511d341caSmrg#else 8611d341caSmrg#define _SharedObjCompile(options) NormalLibObjCompile(options) 8711d341caSmrg#endif 8811d341caSmrg#endif 8911d341caSmrg 9011d341caSmrg#define SRCsuf c 9111d341caSmrg#define Isuf i 9211d341caSmrg 9311d341caSmrg#ifndef LibraryObjectRule 9411d341caSmrg#define LibraryObjectRule() @@\ 9511d341caSmrgall:: @@\ 9611d341caSmrg _DebuggedLibMkdir() @@\ 9711d341caSmrg _ProfiledLibMkdir() @@\ 9811d341caSmrg _NormalLibMkdir() @@\ 9911d341caSmrg @@\ 10011d341caSmrgincludes:: @@\ 10111d341caSmrg _DebuggedLibMkdir() @@\ 10211d341caSmrg _ProfiledLibMkdir() @@\ 10311d341caSmrg _NormalLibMkdir() @@\ 10411d341caSmrg @@\ 10511d341caSmrg.SRCsuf.Osuf: @@\ 10611d341caSmrg _DebuggedObjCompile($(_NOOP_)) @@\ 10711d341caSmrg _ProfiledObjCompile($(_NOOP_)) @@\ 10811d341caSmrg _NormalObjCompile($(_NOOP_)) @@\ 10911d341caSmrg _SharedObjCompile(SharedServerLibraryDef) @@\ 11011d341caSmrg @@\ 11111d341caSmrgclean:: @@\ 11211d341caSmrg _DebuggedCleanDir() @@\ 11311d341caSmrg _ProfiledCleanDir() @@\ 11411d341caSmrg _NormalCleanDir() @@\ 11511d341caSmrg 11611d341caSmrg#endif /* LibraryObjectRule */ 11711d341caSmrg 11811d341caSmrg#ifndef SpecialLibObjectRule 11911d341caSmrg#define SpecialLibObjectRule(objs,depends,options) @@\ 12011d341caSmrgobjs: depends @@\ 12111d341caSmrg _DebuggedObjCompile(options) @@\ 12211d341caSmrg _ProfiledObjCompile(options) @@\ 12311d341caSmrg _NormalObjCompile(options) @@\ 12411d341caSmrg _SharedObjCompile(options) @@\ 12511d341caSmrg 12611d341caSmrg#endif /* SpecialLibObjectRule */ 12711d341caSmrg 12811d341caSmrg#ifndef SpecialCLibObjectRule 12911d341caSmrg#define SpecialCLibObjectRule(basename,depends,options) @@\ 13011d341caSmrgSpecialLibObjectRule(basename.Osuf,basename.SRCsuf depends,options) @@\ 13111d341caSmrg @@\ 13211d341caSmrgbasename.Isuf: basename.SRCsuf depends @@\ 13311d341caSmrg CPPOnlyCompile(basename.SRCsuf,options) @@\ 13411d341caSmrg @@\ 13511d341caSmrgCenterLoadTarget(debug_src,basename.SRCsuf,NullParameter,$(ALLDEFINES) options) 13611d341caSmrg#endif /* SpecialCLibObjectRule */ 13711d341caSmrg 13811d341caSmrg#if DoSharedLib 13911d341caSmrgLibraryObjectRule() 14011d341caSmrg#else 14111d341caSmrgNormalLibraryObjectRule() 14211d341caSmrg#endif 143