home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-bin / x11r6.1 / lib / x11 / config / amoeba.cf < prev    next >
Encoding:
Text File  |  1996-10-17  |  12.8 KB  |  432 lines

  1. XCOMM platform:  $XConsortium: Amoeba.cf /main/10 1996/01/22 17:35:12 gildea $
  2. XCOMM platform:  $XFree86: xc/config/cf/Amoeba.cf,v 3.6 1995/01/28 15:40:08 dawes Exp $
  3.  
  4. /*  The presence of this configuration file in the X distribution
  5.  *  does not imply full support for the system it describes.
  6.  *  Additional patches from The XFree86 Project, Inc. will be required to 
  7.  *  compile the X distribution on Amoeba.  According to them, these patches
  8.  *  will also be made available at the regular Amoeba ftp site
  9.  *  ftp.am.cs.vu.nl.
  10.  */
  11.  
  12. /*
  13.  * Configuration file for Amoeba 5.2
  14.  */
  15.  
  16. #ifndef OSName
  17. #define OSName                  Amoeba 5.2
  18. #endif
  19. XCOMM operating system:  OSName
  20. #ifndef OSMajorVersion
  21. #define OSMajorVersion          5
  22. #endif
  23. #ifndef OSMinorVersion
  24. #define OSMinorVersion          2
  25. #endif
  26. #ifndef OSTeenyVersion
  27. #define OSTeenyVersion          0
  28. #endif
  29. #ifndef OSVendor
  30. #define OSVendor                Vrije Universiteit
  31. #endif
  32.  
  33. #define AmoebaArchitecture    YES
  34.  
  35. /* Configuration defaults */
  36. #ifndef AmoebaTop
  37. #define AmoebaTop        __AM_TOP__
  38. #endif
  39. #ifndef AmoebaBin
  40. #define AmoebaBin        $(ATOP)/bin.sun4
  41. #endif
  42. #ifndef AmoebaConf
  43. #define AmoebaConf        __AM_CONF__
  44. #endif
  45.  
  46. #define HasNdbm            YES
  47. #define NeedSdbm        YES
  48. #define HasShm            NO
  49. #define HasSecureRPC        NO
  50. #define SetTtyGroup        NO
  51. #define HasPutenv        YES
  52. #define HasSockets              NO
  53. #define HasStreams              NO
  54.  
  55. #if defined(Sun3Architecture) || defined(SparcArchitecture)
  56. #define XsunAmoebaServer    YES
  57. #define XsunAmoebaMonoServer    YES
  58. #endif
  59.  
  60. #define BuildFonts              NO
  61. #define BuildFontServer         NO
  62. #define BuildPex                NO
  63. #define BuildPexExt        NO
  64. #define BuildXIE        NO
  65.  
  66. #define YaccCmd                 byacc
  67. #define TermcapLibrary          /* in libajax */
  68. #define LexLib            /* not needed */
  69.  
  70. #define PexCCOptions        DefaultCCOptions
  71. #define ServerOSDefines        XFree86ServerOSDefines
  72.  
  73. #define UsrLibDir               $(DESTDIR)/profile/module/x11/lib
  74. #define LibDir                  $(DESTDIR)/profile/module/x11/lib
  75. #define ManDirectoryRoot        $(DESTDIR)/profile/module/x11/man
  76. #define BinDir                  $(DESTDIR)/profile/module/x11/bin
  77. #define IncRoot                 $(DESTDIR)/profile/module/x11/include
  78. #define FontDir                 $(DESTDIR)/profile/module/x11/fonts/$(ARCH)
  79. #define DefaultRGBDatabase      $(DESTDIR)/profile/module/x11/lib/rgb/$(ARCH)/rgb
  80.  
  81. #define ManSuffix               1
  82. #define ManPath                 ManDirectoryRoot
  83. #define XmanLocalSearchPath     ManDirectoryRoot
  84.  
  85. #define DefaultUserPath         :/bin:$(BINDIR)
  86. #define DefaultSystemPath       /bin:$(BINDIR):
  87.  
  88. #define StandardIncludes        -I$(ATOP)/src/h \
  89.                 -I$(ATOP)/src/h/posix \
  90.                 -I$(ATOP)/src/h/posix/machdep/$(ARCH) \
  91.                 -I$(ATOP)/src/h/machdep/arch/$(ARCH) \
  92.                 -I$(ATOP)/src/h/toolset/$(TOOLSET)
  93.  
  94. #define Malloc0ReturnsNull      YES
  95. #define ServerInstallFlags      -s 32
  96. #define FontDefines             -DFONT_SNF
  97. #define ConnectionFlags         -DAMTCPCONN -DAMRPCCONN
  98. #define ServerXdmcpDefines    /* no -DXDMCP */
  99. #define UseRgbTxt        YES
  100. #define NdbmDefines        -DSDBM -DNDBM -I$(INCLUDESRC)
  101. #define DBMLibrary        /* $(LIBSRC)/sdbm/libsdbm.a */
  102.  
  103. #if defined(i386Architecture)
  104. #ifndef AckToolset
  105. #define AckToolset              YES
  106. #define ExtraFPLoadFlags    -fp
  107. #endif
  108. #define XF86MonoServer        YES
  109. #endif
  110.  
  111. #if defined(Sun3Architecture)
  112. #ifndef AckToolset
  113. #define AckToolset              YES
  114. #endif
  115. #endif
  116.  
  117. #if AckToolset
  118. #define CcCmd                   ack
  119. #define ServerCcCmd             ack
  120. #define LdCmd                   ack
  121. #define AckArchOption        -mam_$(ARCH)
  122. #define DefaultCCOptions        AckArchOption
  123. #define LibraryCCOptions        AckArchOption
  124. #define LdCombineFlags          -Rled-r -c.out
  125. #define ArCmd             aal clrv
  126. #define RanlibCmd        /bin/true
  127. #define AsCmd            AmoebaConf/$(ARCH).$(TOOLSET)/toolset/do_as AckArchOption
  128. #define AsIncl            -I$(ATOP)/src/h/machdep/arch/$(ARCH)
  129. #define AsmDefines        -DACK_ASSEMBLER
  130. #define LdPreLib        /**/
  131. #define LdPostLib        /**/
  132. #endif
  133.  
  134. #if defined(SparcArchitecture)
  135. #define AllocateLocalDefines    -DINCLUDE_ALLOCA_H
  136.  
  137. #define CcCmd                   cc
  138. #define ServerCcCmd             cc
  139. #define LdCmd                   AmoebaConf/$(ARCH).$(TOOLSET)/toolset/do_gld
  140. #define DefaultCCOptions        -sun4
  141. #define LibraryCCOptions        -sun4
  142. #define AmoebaCompilerDefs    -Usun
  143. #define ServerExtraDefines    AllocateLocalDefines
  144. #define LdPostLib        /**/
  145. #endif
  146.  
  147. #ifndef AmoebaCompilerDefs
  148. #define AmoebaCompilerDefs    /**/
  149. #endif
  150.  
  151. #define CommonAmoebaDefines     -DAMOEBA -D$(ARCH) AmoebaCompilerDefs
  152. #define StandardDefines         CommonAmoebaDefines
  153. #define StandardCppDefines      StandardDefines
  154.  
  155. #ifndef ExtraFPLoadFlags
  156. #define ExtraFPLoadFlags
  157. #endif
  158. #define MathLibrary        $(ALIB)/math/libmath.a
  159. #define OSLibraries             $(ALIB)/ajax/libajax.a \
  160.                 $(ALIB)/amoeba/libamoeba.a \
  161.                 MathLibrary \
  162.                 ExtraFPLoadFlags
  163. #define ServerExtraSysLibs    $(CBRT) OSLibraries
  164. #define ExtraLoadFlags        OSLibraries
  165.  
  166. ATOP            = AmoebaTop
  167. ALIB            = AmoebaConf/$(ARCH).$(TOOLSET)/lib
  168. #if AckToolset 
  169. /* The ACK toolset already links in the appropriate head.o by default */
  170. HEAD            =
  171. #else
  172. HEAD            = $(ALIB)/head/head.o
  173. #endif
  174.  
  175. ABIN            = AmoebaBin
  176. AINSTALL        = /bin/sh $(CONFIGSRC)/util/aminstall.sh $(ABIN)
  177. AINSTALLFLAGS   =
  178. TOB             = /bin/sh $(CONFIGSRC)/util/aminstall.sh $(ABIN)
  179. MKXDIRHIER      = /bin/sh $(CONFIGSRC)/util/ammkdirhier.sh $(ABIN)
  180.  
  181. /* Make wizardy: */
  182. COMPILE.c=$(CC) $(CFLAGS) $(CPPFLAGS) -c
  183. LINK.c=$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
  184.  
  185. #if defined(i386Architecture)
  186. ARCH            = i80386
  187. TOOLSET         = ack
  188. ALDFLAGS        = /* -mam_i80386 now in CCopts */ -.c -Rcv-s32
  189.  
  190. #include <xfree86.cf>
  191. #endif
  192.  
  193. #if defined(Sun3Architecture)
  194. ARCH            = mc68000
  195. TOOLSET         = ack
  196. ALDFLAGS        =  -.c -Rcv-s32
  197. #endif
  198.  
  199. #if defined(SparcArchitecture)
  200. ARCH            = sparc
  201. TOOLSET         = sun
  202. SPARCLIBDIR     = AmoebaBin/gnu/sparc
  203. ALDFLAGS        = -mam_sparc -n -Ttext 40000 -Bstatic -e start -L$(SPARCLIBDIR)
  204. #endif
  205.  
  206. #define BootstrapCFlags        -DAMOEBA -DCROSS_$(ARCH) -DCROSS_COMPILE
  207.  
  208. /*
  209.  * The rest of this files consists of rules to allow cross-compilation
  210.  * and installation of binaries and data files from the Unix host to
  211.  * the Amoeba file system.
  212.  */
  213.  
  214. /* #ifdef CROSS_COMPILING */
  215. #define CrossCompiling          YES
  216.  
  217. #define HostLinkRule(target, flags, src, libs)  cc -o target src
  218.  
  219. #define LinkRule(program,options,objects,libraries) \
  220. $(LD) $(ALDFLAGS) $(HEAD) -o program options objects libraries $(EXTRA_LOAD_FLAGS)
  221.  
  222. /* ComplexHostProgramTarget - Compile a program such that we can run
  223.  * it on this host, i.e., don't use the default cross compiler.
  224.  */
  225. #ifndef ComplexHostProgramTarget
  226. #define    ComplexHostProgramTarget(program)                @@\
  227.               CC=cc                            @@\
  228.     STD_INCLUDES=                            @@\
  229.           CFLAGS=$(TOP_INCLUDES) $(INCLUDES) $(BOOTSTRAPCFLAGS)        @@\
  230. EXTRA_LOAD_FLAGS=                            @@\
  231.         PROGRAM = program                        @@\
  232.                                     @@\
  233. AllTarget(program)                            @@\
  234.                                     @@\
  235. program: $(OBJS) $(DEPLIBS)                        @@\
  236.     RemoveTargetProgram($@)                        @@\
  237.     HostLinkRule($@,$(_NOOP_),$(OBJS),$(DEPLIBS) $(LOCAL_LIBRARIES)) @@\
  238.                                     @@\
  239. DependTarget()                                @@\
  240.                                     @@\
  241. LintTarget()                                @@\
  242.                                     @@\
  243. clean::                                    @@\
  244.     RemoveFile(ProgramTargetName(program))
  245. #endif /* ComplexHostProgramTarget */
  246.  
  247. #ifndef SimpleHostProgramTarget
  248. #define SimpleHostProgramTarget(program)                @@\
  249.            OBJS = program.o                        @@\
  250.            SRCS = program.c                        @@\
  251.                                     @@\
  252. ComplexHostProgramTarget(program)
  253. #endif /* SimpleHostProgramTarget */
  254.  
  255.  
  256. #ifndef Concat
  257. #if (__STDC__ && !defined(UnixCpp)) || defined(AnsiCpp)
  258. #define Concat(a,b)a##b
  259. #else
  260. #define Concat(a,b)a/**/b
  261. #endif
  262. #endif
  263.  
  264. /*
  265.  * LintLibReferences - variables for lint libraries
  266.  */
  267. #ifndef LintLibReferences
  268. #define LintLibReferences(varname,libname,libsource)            @@\
  269. Concat(LINT,varname) = Concat(libsource/llib-,libname.ln)
  270. #endif
  271.  
  272. /*
  273.  * UnsharedLibReferences - variables for unshared libraries
  274.  */
  275. #ifndef UnsharedLibReferences
  276. #define UnsharedLibReferences(varname,libname,libsource)        @@\
  277. Concat3(DEP,varname,LIB) = Concat($(BUILDLIBDIR)/lib,libname.a)        @@\
  278.      Concat(varname,LIB) = Concat($(BUILDLIBDIR)/lib,libname.a)        @@\
  279. LintLibReferences(varname,libname,libsource)
  280. #endif
  281.  
  282. #ifndef InstallLibrary
  283. #define    InstallLibrary(libname,dest)                    @@\
  284. install:: Concat(lib,libname.a)                        @@\
  285.     @echo '** TODO: Install Library ' Concat(lib,libname.a)
  286. #endif /* InstallLibrary */
  287.  
  288. #ifndef MergeIntoInstalledLibrary
  289. #define MergeIntoInstalledLibrary(tolib,fromlib)            @@\
  290. install::  fromlib                            @@\
  291.     @echo '** TODO: merge ' fromlib into tolib
  292. #endif /* MergeIntoInstalledLibrary */
  293.  
  294. #ifndef InstallLibraryAlias
  295. #define    InstallLibraryAlias(libname,alias,dest)                @@\
  296. install::                                @@\
  297.     @echo '** TODO: Install lib alias ' libname alias dest
  298. #endif /* InstallLibraryAlias */
  299.  
  300. #ifndef InstallLintLibrary
  301. #define    InstallLintLibrary(libname,dest)                @@\
  302. install.ln:: Concat(llib-l,libname.ln)                    @@\
  303.     @echo '** TODO: Install lintlib ' Concat(llib-l,libname.ln)
  304. #endif /* InstallLintLibrary */
  305.  
  306. #ifndef InstallManPageLong
  307. #define    InstallManPageLong(file,destdir,dest)                @@\
  308. install.man:: file.man                            @@\
  309.     @echo '** TODO: Install man page ' file.man
  310. #endif /* InstallManPageLong */
  311.  
  312. #ifndef InstallGenManPageLong
  313. #define    InstallGenManPageLong(file,destdir,dest,suffix)            @@\
  314. install.man:: file.man                            @@\
  315.     @echo '** TODO: Install man page ' file.man
  316. #endif /* InstallGenManPageLong */
  317.  
  318. #ifndef InstallManPageAliases
  319. #define    InstallManPageAliases(file,destdir,aliases)            @@\
  320. install.man::                                @@\
  321.     @(TMP=/tmp/tmp.$$$$; \                        @@\
  322.     $(RM) $${TMP}; \                        @@\
  323.     echo .so `basename destdir`/file.$(MANSUFFIX) > $${TMP}; \    @@\
  324.     for i in aliases; do (set -x; \                    @@\
  325.     $(TOB) $${TMP} $(DESTDIR)destdir/$$i.$(MANSUFFIX)); \         @@\
  326.     done; \                                @@\
  327.     $(RM) $${TMP})
  328. #endif /* InstallManPageAliases */
  329.  
  330. #ifndef InstallGenManPageAliases
  331. #define    InstallGenManPageAliases(file,destdir,suffix,aliases)        @@\
  332. install.man::                                @@\
  333.     @(TMP=/tmp/tmp.$$$$; \                        @@\
  334.     $(RM) $${TMP}; \                        @@\
  335.     echo .so `basename destdir`/file.suffix > $${TMP}; \        @@\
  336.     for i in aliases; do (set -x; \                    @@\
  337.     $(TOB) $${TMP} $(DESTDIR)destdir/$$i.suffix); \         @@\
  338.     done; \                                @@\
  339.     $(RM) $${TMP})
  340. #endif /* InstallGenManPageAliases */
  341.  
  342. #ifndef InstallNamedNonExec
  343. #define    InstallNamedNonExec(srcname,dstname,dest)            @@\
  344. install:: srcname                            @@\
  345.     $(MKXDIRHIER) $(DESTDIR)dest                    @@\
  346.     $(TOB) srcname $(DESTDIR)dest/dstname
  347. #endif /* InstallNamedNonExec */
  348.  
  349. #ifndef InstallNonExecFile
  350. #define    InstallNonExecFile(file,dest)                    @@\
  351. install:: file                                @@\
  352.     $(MKXDIRHIER) dest                        @@\
  353.     $(TOB) file dest/file
  354. #endif /* InstallNonExecFile */
  355.  
  356. #ifndef InstallNonExec
  357. #define    InstallNonExec(file,dest)                    @@\
  358. install:: file                                @@\
  359.     $(TOB) file dest/file
  360. #endif /* InstallNonExec */
  361.  
  362. #ifndef InstallProgramWithFlags
  363. #define InstallProgramWithFlags(program,dest,flags)            @@\
  364. install:: program                            @@\
  365.     $(MKXDIRHIER) dest/program                    @@\
  366.     $(AINSTALL) $(AINSTALLFLAGS) program dest/program/pd.$(ARCH)
  367. #endif /* InstallProgramWithFlags */
  368.  
  369. #ifndef InstallScript
  370. #define    InstallScript(program,dest)                    @@\
  371. install:: program.script                        @@\
  372.     $(TOB) program.script dest/program
  373. #endif /* InstallScript */
  374.  
  375. #ifndef InstallNamedScript
  376. #define    InstallNamedScript(srcname,dstname,dest)            @@\
  377. install:: srcname                            @@\
  378.     $(TOB) srcname dest/dstname
  379. #endif /* InstallNamedScript */
  380.  
  381. #ifndef InstallNamedProg
  382. #define    InstallNamedProg(srcname,dstname,dest)                @@\
  383. install:: srcname                            @@\
  384.     $(MKXDIRHIER) $(DESTDIR)dest/dstname                @@\
  385.     $(AINSTALL) $(AINSTALLFLAGS) srcname $(DESTDIR)dest/dstname/pd.$(ARCH)
  386. #endif /* InstallNamedProg */
  387.  
  388. #ifndef InstallMultipleDestFlags
  389. #define InstallMultipleDestFlags(step,list,dest,flags)            @@\
  390. step:: list                                @@\
  391.     $(MKXDIRHIER) $(DESTDIR)dest                    @@\
  392.     @case '${MFLAGS}' in *[i]*) set +e;; esac; \            @@\
  393.     for i in list; do \                        @@\
  394.         (set -x; $(TOB) $$i dest/$$i); \            @@\
  395.     done
  396. #endif /* InstallMultipleDestFlags */
  397.  
  398. #ifndef InstallMultipleProg
  399. #define InstallMultipleProg(list,dest)                    @@\
  400. install:: list                                @@\
  401.     @case '${MFLAGS}' in *[i]*) set +e;; esac; \            @@\
  402.     for i in list; do \                        @@\
  403.         (set -x; \                             @@\
  404.           $(MKXDIRHIER) $(DESTDIR)dest/$$i; \            @@\
  405.         $(AINSTALL) $(AINSTALLFLAGS) $$i dest/$$i/pd.$(ARCH));\    @@\
  406.     done
  407. #endif /* InstallMultipleProg */
  408.  
  409. #ifndef InstallAppDefaults
  410. #if InstallAppDefFiles
  411. #define    InstallAppDefaults(class)                    @@\
  412. install:: class.ad                            @@\
  413.     $(MKXDIRHIER) $(XAPPLOADDIR)                    @@\
  414.     $(TOB) class.ad $(DESTDIR)$(XAPPLOADDIR)/class
  415. #else
  416. #define    InstallAppDefaults(class)
  417. #endif /* InstallAppDefFiles */
  418. #endif /* InstallAppDefaults */
  419.  
  420. #ifndef InstallAppDefaultsLong
  421. #if InstallAppDefFiles
  422. #define    InstallAppDefaultsLong(file,class)                @@\
  423. install:: file.ad                            @@\
  424.     $(MKXDIRHIER) $(DESTDIR)$(XAPPLOADDIR)                @@\
  425.     $(TOB) file.ad $(DESTDIR)$(XAPPLOADDIR)/class
  426. #else
  427. #define    InstallAppDefaultsLong(file,class)
  428. #endif /* InstallAppDefFiles */
  429. #endif /* InstallAppDefaultsLong */
  430.  
  431. /* #endif CROSS_COMPILE */
  432.