Edit

IABSD.fr/xenocara/util/cf/ServerLib.tmpl

Branch :

  • Show log

    Commit

  • Author : matthieu
    Date : 2006-11-25 16:15:45
    Hash : 782466d3
    Message : import from X.Org 7.2RC2

  • util/cf/ServerLib.tmpl
  • XCOMM $XFree86: xc/config/cf/ServerLib.tmpl,v 3.0tsi Exp $
    /*
     * Server Library imakefile info - this contains any special
     * redefinitions, etc. that Imakefiles in the various server library
     * subtrees will need.
     *
     * Before including this, you must set the following boolean variables:
     * DoSharedLib, DoNormalLib, DoDebugLib, DoProfileLib
     *
     */
    
    #ifndef DoNormalLib
    #define DoNormalLib	YES
    #endif
    
    #ifndef LibraryDefines
    #define LibraryDefines StandardDefines
    #endif
    #ifndef LibraryCDebugFlags
    #define LibraryCDebugFlags DefaultCDebugFlags
    #endif
    #ifndef SeparateSharedCompile
    #define SeparateSharedCompile YES
    #endif
    #ifndef SharedServerLibraryDef
    #define SharedServerLibraryDef $(__NOOP__)
    #endif
    
    #ifndef LibraryCcCmd
    #if DoSharedLib && defined(SharedLibraryCcCmd)
    #define LibraryCcCmd SharedLibraryCcCmd
    #else
    #define LibraryCcCmd CcCmd
    #endif
    #endif
    #ifndef LibraryCCOptions
    #if DoSharedLib && defined(SharedLibraryCCOptions)
    #define LibraryCCOptions SharedLibraryCCOptions
    #else
    #define LibraryCCOptions DefaultCCOptions
    #endif
    #endif
    
    #if DoDebugLib
    #define _DebuggedLibMkdir() LibMkdir(debugger)
    #define _DebuggedObjCompile(options) DebuggedLibObjCompile(options)
    #define _DebuggedCleanDir() LibCleanDir(debugger)
    #else
    #define _DebuggedLibMkdir() $(_NULLCMD_)
    #define _DebuggedObjCompile(options) $(_NULLCMD_)
    #define _DebuggedCleanDir() $(_NULLCMD_)
    #endif
    
    #if DoProfileLib
    #define _ProfiledLibMkdir() LibMkdir(profiled)
    #define _ProfiledObjCompile(options) ProfiledLibObjCompile(options)
    #define _ProfiledCleanDir() LibCleanDir(profiled)
    #else
    #define _ProfiledLibMkdir() $(_NULLCMD_)
    #define _ProfiledObjCompile(options) $(_NULLCMD_)
    #define _ProfiledCleanDir() $(_NULLCMD_)
    #endif
    
    #if !DoNormalLib
    #define _NormalLibMkdir() $(_NULLCMD_)
    #define _NormalObjCompile(options) $(_NULLCMD_)
    #define _NormalCleanDir() $(_NULLCMD_)
    #else
    #if DoSharedLib && SeparateSharedCompile
    #define _NormalLibMkdir() LibMkdir(unshared)
    #define _NormalObjCompile(options) UnsharedLibObjCompile(options)
    #define _NormalCleanDir() LibCleanDir(unshared)
    #else
    #define _NormalLibMkdir() $(_NULLCMD_)
    #define _NormalObjCompile(options) NormalLibObjCompile(options)
    #define _NormalCleanDir() $(_NULLCMD_)
    #endif
    #endif
    
    #if !DoSharedLib || (DoNormalLib && !SeparateSharedCompile)
    #define _SharedObjCompile(options) $(_NULLCMD_)
    #else
    #if SeparateSharedCompile
    #define _SharedObjCompile(options) NormalSharedLibObjCompile(options)
    #else
    #define _SharedObjCompile(options) NormalLibObjCompile(options)
    #endif
    #endif
    
    #define SRCsuf c
    #define Isuf i
    
    #ifndef LibraryObjectRule
    #define LibraryObjectRule()						@@\
    all::									@@\
    	_DebuggedLibMkdir()						@@\
    	_ProfiledLibMkdir()						@@\
    	_NormalLibMkdir()						@@\
    									@@\
    includes::								@@\
    	_DebuggedLibMkdir()						@@\
    	_ProfiledLibMkdir()						@@\
    	_NormalLibMkdir()						@@\
    									@@\
    .SRCsuf.Osuf:								@@\
    	_DebuggedObjCompile($(_NOOP_))					@@\
    	_ProfiledObjCompile($(_NOOP_))					@@\
    	_NormalObjCompile($(_NOOP_))					@@\
    	_SharedObjCompile(SharedServerLibraryDef)			@@\
    									@@\
    clean::									@@\
    	_DebuggedCleanDir()						@@\
    	_ProfiledCleanDir()						@@\
    	_NormalCleanDir()						@@\
    
    #endif /* LibraryObjectRule */
    
    #ifndef SpecialLibObjectRule
    #define SpecialLibObjectRule(objs,depends,options)			@@\
    objs: depends								@@\
    	_DebuggedObjCompile(options)					@@\
    	_ProfiledObjCompile(options)					@@\
    	_NormalObjCompile(options)					@@\
    	_SharedObjCompile(options)					@@\
    
    #endif /* SpecialLibObjectRule */
    
    #ifndef SpecialCLibObjectRule
    #define SpecialCLibObjectRule(basename,depends,options)			@@\
    SpecialLibObjectRule(basename.Osuf,basename.SRCsuf depends,options)	@@\
    									@@\
    basename.Isuf: basename.SRCsuf depends					@@\
    	CPPOnlyCompile(basename.SRCsuf,options)				@@\
    									@@\
    CenterLoadTarget(debug_src,basename.SRCsuf,NullParameter,$(ALLDEFINES) options)
    #endif /* SpecialCLibObjectRule */
    
    #if DoSharedLib
    LibraryObjectRule()
    #else
    NormalLibraryObjectRule()
    #endif