xenocara/util/cf/Amoeba.cf
2006-11-25 16:15:45 +00:00

429 lines
13 KiB
CFEngine3

XCOMM platform: $Xorg: Amoeba.cf,v 1.3 2000/08/17 19:41:45 cpqbld Exp $
XCOMM platform: $XFree86: xc/config/cf/Amoeba.cf,v 3.10tsi Exp $
/* The presence of this configuration file in the X distribution
* does not imply full support for the system it describes.
* Additional patches from The XFree86 Project, Inc. will be required to
* compile the X distribution on Amoeba. According to them, these patches
* will also be made available at the regular Amoeba ftp site
* ftp.am.cs.vu.nl.
*/
/*
* Configuration file for Amoeba 5.2
*/
#ifndef OSName
#define OSName Amoeba 5.2
#endif
XCOMM operating system: OSName
#ifndef OSMajorVersion
#define OSMajorVersion 5
#endif
#ifndef OSMinorVersion
#define OSMinorVersion 2
#endif
#ifndef OSTeenyVersion
#define OSTeenyVersion 0
#endif
#ifndef OSVendor
#define OSVendor Vrije Universiteit
#endif
#define AmoebaArchitecture YES
/* Configuration defaults */
#ifndef AmoebaTop
#define AmoebaTop __AM_TOP__
#endif
#ifndef AmoebaBin
#define AmoebaBin $(ATOP)/bin.sun4
#endif
#ifndef AmoebaConf
#define AmoebaConf __AM_CONF__
#endif
#define HasNdbm YES
#define NeedSdbm YES
#define HasShm NO
#define HasSecureRPC NO
#define SetTtyGroup NO
#define HasPutenv YES
#define HasSockets NO
#define HasStreams NO
#if defined(Sun3Architecture) || defined(SparcArchitecture)
#define XsunAmoebaServer YES
#define XsunAmoebaMonoServer YES
#endif
#define BuildFonts NO
#define BuildFontServer NO
#define BuildXIE NO
#define YaccCmd byacc
#define TermcapLibrary /* in libajax */
#define LexLib /* not needed */
#define ServerOSDefines XFree86ServerOSDefines
#define UsrLibDir $(DESTDIR)/profile/module/x11/lib
#define LibDir $(DESTDIR)/profile/module/x11/lib
#define ManDirectoryRoot $(DESTDIR)/profile/module/x11/man
#define BinDir $(DESTDIR)/profile/module/x11/bin
#define IncRoot $(DESTDIR)/profile/module/x11/include
#define FontDir $(DESTDIR)/profile/module/x11/fonts/$(ARCH)
#define DefaultRGBDatabase $(DESTDIR)/profile/module/x11/lib/rgb/$(ARCH)/rgb
#define ManSuffix 1
#define ManPath ManDirectoryRoot
#define XmanLocalSearchPath ManDirectoryRoot
#define DefaultUserPath :/bin:$(BINDIR)
#define DefaultSystemPath /bin:$(BINDIR):
#define StandardIncludes -I$(ATOP)/src/h \
-I$(ATOP)/src/h/posix \
-I$(ATOP)/src/h/posix/machdep/$(ARCH) \
-I$(ATOP)/src/h/machdep/arch/$(ARCH) \
-I$(ATOP)/src/h/toolset/$(TOOLSET)
#define Malloc0ReturnsNull YES
#define ServerInstallFlags -s 32
#define FontDefines -DFONT_SNF
#define ConnectionFlags -DAMTCPCONN -DAMRPCCONN
#define ServerXdmcpDefines /* no -DXDMCP */
#define UseRgbTxt YES
#define NdbmDefines -DSDBM -DNDBM -I$(XINCLUDESRC)
#define DBMLibrary /* $(LIBSRC)/sdbm/libsdbm.a */
#if defined(i386Architecture)
#ifndef AckToolset
#define AckToolset YES
#define ExtraFPLoadFlags -fp
#endif
#define XF86MonoServer YES
#endif
#if defined(Sun3Architecture)
#ifndef AckToolset
#define AckToolset YES
#endif
#endif
#if AckToolset
#define CcCmd ack
#define ServerCcCmd ack
#define LdCmd ack
#define AckArchOption -mam_$(ARCH)
#define DefaultCCOptions AckArchOption
#define LibraryCCOptions AckArchOption
#define LdCombineFlags -Rled-r -c.out
#define ArCmd aal clrv
#define RanlibCmd /bin/true
#define AsCmd AmoebaConf/$(ARCH).$(TOOLSET)/toolset/do_as AckArchOption
#define AsIncl -I$(ATOP)/src/h/machdep/arch/$(ARCH)
#define AsmDefines -DACK_ASSEMBLER
#define LdPreLib /**/
#define LdPostLib /**/
#endif
#if defined(SparcArchitecture)
#define AllocateLocalDefines -DINCLUDE_ALLOCA_H
#define CcCmd cc
#define ServerCcCmd cc
#define LdCmd AmoebaConf/$(ARCH).$(TOOLSET)/toolset/do_gld
#define DefaultCCOptions -sun4
#define LibraryCCOptions -sun4
#define AmoebaCompilerDefs -Usun
#define ServerExtraDefines AllocateLocalDefines
#define LdPostLib /**/
#endif
#ifndef AmoebaCompilerDefs
#define AmoebaCompilerDefs /**/
#endif
#define CommonAmoebaDefines -DAMOEBA -D$(ARCH) AmoebaCompilerDefs
#define StandardDefines CommonAmoebaDefines
#define StandardCppDefines StandardDefines
#ifndef ExtraFPLoadFlags
#define ExtraFPLoadFlags
#endif
#define MathLibrary $(ALIB)/math/libmath.a
#define OSLibraries $(ALIB)/ajax/libajax.a \
$(ALIB)/amoeba/libamoeba.a \
MathLibrary \
ExtraFPLoadFlags
#define ServerExtraSysLibs $(CBRT) OSLibraries
#define ExtraLoadFlags OSLibraries
ATOP = AmoebaTop
ALIB = AmoebaConf/$(ARCH).$(TOOLSET)/lib
#if AckToolset
/* The ACK toolset already links in the appropriate head.o by default */
HEAD =
#else
HEAD = $(ALIB)/head/head.o
#endif
ABIN = AmoebaBin
AINSTALL = /bin/sh $(CONFIGSRC)/util/aminstall.sh $(ABIN)
AINSTALLFLAGS =
TOB = /bin/sh $(CONFIGSRC)/util/aminstall.sh $(ABIN)
MKXDIRHIER = /bin/sh $(CONFIGSRC)/util/ammkdirhier.sh $(ABIN)
/* Make wizardy: */
COMPILE.c=$(CC) $(CFLAGS) $(CPPFLAGS) -c
LINK.c=$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
#if defined(i386Architecture)
ARCH = i80386
TOOLSET = ack
ALDFLAGS = /* -mam_i80386 now in CCopts */ -.c -Rcv-s32
#include <xorg.cf>
#endif
#if defined(Sun3Architecture)
ARCH = mc68000
TOOLSET = ack
ALDFLAGS = -.c -Rcv-s32
#endif
#if defined(SparcArchitecture)
ARCH = sparc
TOOLSET = sun
SPARCLIBDIR = AmoebaBin/gnu/sparc
ALDFLAGS = -mam_sparc -n -Ttext 40000 -Bstatic -e start -L$(SPARCLIBDIR)
#endif
#define BootstrapCFlags -DAMOEBA -DCROSS_$(ARCH) -DCROSS_COMPILE
/*
* The rest of this files consists of rules to allow cross-compilation
* and installation of binaries and data files from the Unix host to
* the Amoeba file system.
*/
/* #ifdef CROSS_COMPILING */
#define CrossCompiling YES
#define HostLinkRule(target, flags, src, libs) cc -o target src
#define LinkRule(program,options,objects,libraries) \
$(LD) $(ALDFLAGS) $(HEAD) -o program options objects libraries $(EXTRA_LOAD_FLAGS)
/* ComplexHostProgramTarget - Compile a program such that we can run
* it on this host, i.e., don't use the default cross compiler.
*/
#ifndef ComplexHostProgramTarget
#define ComplexHostProgramTarget(program) @@\
CC=cc @@\
STD_INCLUDES= @@\
CFLAGS=$(TOP_INCLUDES) $(INCLUDES) $(BOOTSTRAPCFLAGS) @@\
EXTRA_LOAD_FLAGS= @@\
PROGRAM = program @@\
@@\
AllTarget(program) @@\
@@\
program: $(OBJS) $(DEPLIBS) @@\
RemoveTargetProgram($@) @@\
HostLinkRule($@,$(_NOOP_),$(OBJS),$(DEPLIBS) $(LOCAL_LIBRARIES)) @@\
@@\
DependTarget() @@\
@@\
LintTarget() @@\
@@\
clean:: @@\
RemoveFile(ProgramTargetName(program))
#endif /* ComplexHostProgramTarget */
#ifndef SimpleHostProgramTarget
#define SimpleHostProgramTarget(program) @@\
OBJS = program.o @@\
SRCS = program.c @@\
@@\
ComplexHostProgramTarget(program)
#endif /* SimpleHostProgramTarget */
#ifndef Concat
#if (defined(__STDC__) && !defined(UnixCpp)) || defined(AnsiCpp)
#define Concat(a,b)a##b
#else
#define Concat(a,b)a/**/b
#endif
#endif
/*
* LintLibReferences - variables for lint libraries
*/
#ifndef LintLibReferences
#define LintLibReferences(varname,libname,libsource) @@\
Concat(LINT,varname) = Concat(libsource/llib-,libname.ln)
#endif
/*
* UnsharedLibReferences - variables for unshared libraries
*/
#ifndef UnsharedLibReferences
#define UnsharedLibReferences(varname,libname,libsource) @@\
Concat3(DEP,varname,LIB) = Concat($(BUILDLIBDIR)/lib,libname.a) @@\
Concat(varname,LIB) = Concat($(BUILDLIBDIR)/lib,libname.a) @@\
LintLibReferences(varname,libname,libsource)
#endif
#ifndef InstallLibrary
#define InstallLibrary(libname,dest) @@\
install:: Concat(lib,libname.a) @@\
@echo '** TODO: Install Library ' Concat(lib,libname.a)
#endif /* InstallLibrary */
#ifndef MergeIntoInstalledLibrary
#define MergeIntoInstalledLibrary(tolib,fromlib) @@\
install:: fromlib @@\
@echo '** TODO: merge ' fromlib into tolib
#endif /* MergeIntoInstalledLibrary */
#ifndef InstallLibraryAlias
#define InstallLibraryAlias(libname,alias,dest) @@\
install:: @@\
@echo '** TODO: Install lib alias ' libname alias dest
#endif /* InstallLibraryAlias */
#ifndef InstallLintLibrary
#define InstallLintLibrary(libname,dest) @@\
install.ln:: Concat(llib-l,libname.ln) @@\
@echo '** TODO: Install lintlib ' Concat(llib-l,libname.ln)
#endif /* InstallLintLibrary */
#ifndef InstallManPageLong
#define InstallManPageLong(file,destdir,dest) @@\
install.man:: file.man @@\
@echo '** TODO: Install man page ' file.man
#endif /* InstallManPageLong */
#ifndef InstallGenManPageLong
#define InstallGenManPageLong(file,destdir,dest,suffix) @@\
install.man:: file.man @@\
@echo '** TODO: Install man page ' file.man
#endif /* InstallGenManPageLong */
#ifndef InstallManPageAliases
#define InstallManPageAliases(file,destdir,aliases) @@\
install.man:: @@\
@(TMP=/tmp/tmp.$$$$; \ @@\
$(RM) $${TMP}; \ @@\
echo .so `basename destdir`/file.$(MANSUFFIX) > $${TMP}; \ @@\
for i in aliases; do (set -x; \ @@\
$(TOB) $${TMP} $(DESTDIR)destdir/$$i.$(MANSUFFIX)); \ @@\
done; \ @@\
$(RM) $${TMP})
#endif /* InstallManPageAliases */
#ifndef InstallGenManPageAliases
#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\
install.man:: @@\
@(TMP=/tmp/tmp.$$$$; \ @@\
$(RM) $${TMP}; \ @@\
echo .so `basename destdir`/file.suffix > $${TMP}; \ @@\
for i in aliases; do (set -x; \ @@\
$(TOB) $${TMP} $(DESTDIR)destdir/$$i.suffix); \ @@\
done; \ @@\
$(RM) $${TMP})
#endif /* InstallGenManPageAliases */
#ifndef InstallNamedNonExec
#define InstallNamedNonExec(srcname,dstname,dest) @@\
install:: srcname @@\
$(MKXDIRHIER) $(DESTDIR)dest @@\
$(TOB) srcname $(DESTDIR)dest/dstname
#endif /* InstallNamedNonExec */
#ifndef InstallNonExecFile
#define InstallNonExecFile(file,dest) @@\
install:: file @@\
$(MKXDIRHIER) dest @@\
$(TOB) file dest/file
#endif /* InstallNonExecFile */
#ifndef InstallNonExec
#define InstallNonExec(file,dest) @@\
install:: file @@\
$(TOB) file dest/file
#endif /* InstallNonExec */
#ifndef InstallProgramWithFlags
#define InstallProgramWithFlags(program,dest,flags) @@\
install:: program @@\
$(MKXDIRHIER) dest/program @@\
$(AINSTALL) $(AINSTALLFLAGS) program dest/program/pd.$(ARCH)
#endif /* InstallProgramWithFlags */
#ifndef InstallScript
#define InstallScript(program,dest) @@\
install:: program.script @@\
$(TOB) program.script dest/program
#endif /* InstallScript */
#ifndef InstallNamedScript
#define InstallNamedScript(srcname,dstname,dest) @@\
install:: srcname @@\
$(TOB) srcname dest/dstname
#endif /* InstallNamedScript */
#ifndef InstallNamedProg
#define InstallNamedProg(srcname,dstname,dest) @@\
install:: srcname @@\
$(MKXDIRHIER) $(DESTDIR)dest/dstname @@\
$(AINSTALL) $(AINSTALLFLAGS) srcname $(DESTDIR)dest/dstname/pd.$(ARCH)
#endif /* InstallNamedProg */
#ifndef InstallMultipleDestFlags
#define InstallMultipleDestFlags(step,list,dest,flags) @@\
step:: list @@\
$(MKXDIRHIER) $(DESTDIR)dest @@\
@case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\
for i in list; do \ @@\
(set -x; $(TOB) $$i dest/$$i); \ @@\
done
#endif /* InstallMultipleDestFlags */
#ifndef InstallMultipleProg
#define InstallMultipleProg(list,dest) @@\
install:: list @@\
@case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\
for i in list; do \ @@\
(set -x; \ @@\
$(MKXDIRHIER) $(DESTDIR)dest/$$i; \ @@\
$(AINSTALL) $(AINSTALLFLAGS) $$i dest/$$i/pd.$(ARCH));\ @@\
done
#endif /* InstallMultipleProg */
#ifndef InstallAppDefaults
#if InstallAppDefFiles
#define InstallAppDefaults(class) @@\
install:: class.ad @@\
$(MKXDIRHIER) $(XAPPLOADDIR) @@\
$(TOB) class.ad $(DESTDIR)$(XAPPLOADDIR)/class
#else
#define InstallAppDefaults(class)
#endif /* InstallAppDefFiles */
#endif /* InstallAppDefaults */
#ifndef InstallAppDefaultsLong
#if InstallAppDefFiles
#define InstallAppDefaultsLong(file,class) @@\
install:: file.ad @@\
$(MKXDIRHIER) $(DESTDIR)$(XAPPLOADDIR) @@\
$(TOB) file.ad $(DESTDIR)$(XAPPLOADDIR)/class
#else
#define InstallAppDefaultsLong(file,class)
#endif /* InstallAppDefFiles */
#endif /* InstallAppDefaultsLong */
/* #endif CROSS_COMPILE */