Skip to content
Snippets Groups Projects
Commit d39a85d3 authored by Will Partain's avatar Will Partain
Browse files

[project @ 1996-01-09 17:59:59 by partain]

parent e7d21ee4
No related merge requests found
# line 9 "macros-ghc.ljm"
/* ToDo: cmp -> $(CMP) */
#ifndef UgenTarget
#define UgenTarget(fileroot) @@\
ExtraStuffToBeVeryClean(fileroot.c fileroot.h fileroot.hs) @@\
fileroot.c : fileroot.ugn @@\
d=`dirname fileroot.ugn` ; f=`basename fileroot.ugn .ugn` ; \ @@\
$(RM) fileroot.c fileroot.hs "$$d/U_$$f.hs" fileroot.h-SAVE @@\
if [ -f fileroot.h ] ; then $(MV) -f fileroot.h fileroot.h-SAVE ; else exit 0 ; fi @@\
$(UGEN) fileroot.ugn || ( $(RM) fileroot.h fileroot.c fileroot.hs; $(MV) -f fileroot.h-SAVE fileroot.h ) @@\
if cmp -s fileroot.h-SAVE fileroot.h ; then \ @@\
$(MV) -f fileroot.h-SAVE fileroot.h ; \ @@\
else \ @@\
chmod 444 fileroot.h fileroot.c fileroot.hs ; \ @@\
fi @@\
@$(RM) fileroot.h-SAVE @@\
@d=`dirname fileroot.ugn` ; f=`basename fileroot.ugn .ugn` ; \ @@\
$(MV) -f fileroot.hs "$$d/U_$$f.hs" @@\
@@\
fileroot.h : fileroot.c @@\
@: /* no-op */
#endif /* UgenTarget */
# line 8 "only4-ghc.ljm"
/* Project identification - name and version */
#ifndef ProjectName
#define ProjectName The Glorious Glasgow Haskell Compilation System
#endif
/* ProjectVersion is something printable */
#ifndef ProjectVersion
#define ProjectVersion 0.26
#endif
/* A patchlevel change is something *very minor* */
#ifndef ProjectPatchLevel
#define ProjectPatchLevel patchlevel 0
#endif
/* GhcBuildeeVersion is something CPP-testable (ProjectVersion * 100) */
#ifndef GhcBuildeeVersion
#define GhcBuildeeVersion 26
#endif
# line 29 "only4-ghc.ljm"
/* state of the source world */
GHC_DRIVERSRC = $(TOP)/ghc/driver
GHC_COMPILERSRC = $(TOP)/ghc/compiler
GHC_RUNTIMESRC = $(TOP)/ghc/runtime
GHC_LIBSRC = $(TOP)/ghc/lib
GHC_INCLUDESRC = $(TOP)/ghc/includes
GHC_UTILSRC = $(TOP)/ghc/utils
GHC_BOOKSRC = $(TOP)/ghc/book
# line 41 "only4-ghc.ljm"
#ifndef GhcIncludesDir
#define GhcIncludesDir $(GHC_INCLUDESRC)
#endif
GHC_INCLUDES = GhcIncludesDir
# line 51 "only4-ghc.ljm"
#ifndef AllProjectsGhcOpts
#define AllProjectsGhcOpts /*none*/
#endif
#ifndef PlatformGhcOpts
#define PlatformGhcOpts /*none*/
#endif
#if HaskellCompilerType == HC_CHALMERS_HBC
GHC_RTS_STYLE = 'hbc'
#else
# if HaskellCompilerType == HC_ROJEMO_NHC
GHC_RTS_STYLE = 'ghc' /* wrong, but more likely to trigger something */
# else
GHC_RTS_STYLE = 'ghc'
# endif
#endif
#ifndef ProjectGhcOpts
#define ProjectGhcOpts -hi-diffs -dcore-lint -link-chk
#endif /* ! ProjectGhcOpts */
#ifndef SetupGhcOpts
#define SetupGhcOpts /*none*/
#endif
GenerateOptionsMakeVars(GHC,OPTS,AllProjectsGhcOpts,PlatformGhcOpts,ProjectGhcOpts,SetupGhcOpts)
GHCFLAGS=$(GLUED_CPP_DEFINES) $(GLUED_GHC_OPTS)
# line 95 "only4-ghc.ljm"
/* build York interpreter as well as Glasgow compiler
*/
#ifndef BuildYorkInterpreter
#define BuildYorkInterpreter NO
#endif
/* incorporate Semantique strictness analyser into the compiler;
it analyses, but the info generated is *UNUSED* :-(
*/
#ifndef UseSemantiqueStrictnessAnalyser
#define UseSemantiqueStrictnessAnalyser NO
#endif
# line 116 "only4-ghc.ljm"
/* defaults for which pieces should be installed */
/* ToDo: possibly obsolete */
#ifndef DoInstallGHCSystem
#define DoInstallGHCSystem YES
#endif /* DoInstallGHCSystem */
# line 124 "only4-ghc.ljm"
/* ------------------------------------------------------------------ */
/* compiler-proper subsystem:
the lib/data bits are installed w/ a version number as well
*/
#ifndef InstBinDir_GHC
# if AT_GLASGOW
# define InstBinDir_GHC $(exec_prefix_GHC)/bin/`/usr/local/gnu/bin/hw_os`
# else
# define InstBinDir_GHC $(exec_prefix_GHC)/bin
# endif
#endif
/* scripts are platform-independent */
#ifndef InstScriptDir_GHC
#define InstScriptDir_GHC $(exec_prefix_GHC)/bin
#endif
/* main "internally-used-by-GHC" stuff */
#ifndef InstLibDir_GHC
#define InstLibDir_GHC $(prefix_GHC)/lib/ghc/$(PROJECTVERSION)/$(HOSTPLATFORM)
#endif
/* "data" is defined (by WDP) to be platform-independent library stuff */
#ifndef InstDataDir_GHC
#define InstDataDir_GHC $(prefix_GHC)/lib/ghc/$(PROJECTVERSION)
#endif
prefix_GHC = InstRootDir_GHC /* set by configure */
exec_prefix_GHC = InstBinRootDir_GHC /* ditto */
INSTBINDIR_GHC = InstBinDir_GHC
INSTSCRIPTDIR_GHC = InstScriptDir_GHC
INSTLIBDIR_GHC = InstLibDir_GHC
INSTDATADIR_GHC = InstDataDir_GHC
# line 183 "only4-ghc.ljm"
#ifndef GhcDriverInstallName
#define GhcDriverInstallName ghc
#endif /* ! GhcDriverInstallName */
GHC_DRIVER_INST_NAME = GhcDriverInstallName
# line 197 "only4-ghc.ljm"
/* ghc: std driver for compilation system */
#ifndef GhcDriverCmd
#define GhcDriverCmd $(GHC_DRIVERSRC)/ghc
#endif
/* macro to make sure it has been built */
#ifndef GhcDriverNeededHere
#define GhcDriverNeededHere(target) \
__SomeUtilNeededHere(target,$(GHC),$(GHC_DRIVERSRC),all)
#endif
/* could be GHC_DRIVER, but GHC is its common name */
GHC = GhcDriverCmd
# line 218 "only4-ghc.ljm"
#ifndef HsCppCmd
#define HsCppCmd $(GHC_HSCPPSRC)/hscpp
#endif
#ifndef HsCppNeededHere
#define HsCppNeededHere(target) \
__SomeUtilNeededHere(target,$(GHC_HSCPP),$(GHC_HSCPPSRC),hscpp)
#endif
GHC_HSCPP = HsCppCmd $(ALLPROJ_CPP_DEFINES)
GHC_HSCPPSRC = $(GHC_UTILSRC)/hscpp
# line 233 "only4-ghc.ljm"
#ifndef HsParserCmd
#define HsParserCmd $(GHC_HSPSRC)/hsp
#endif
#ifndef HsParserNeededHere
#define HsParserNeededHere(target) \
__SomeUtilNeededHere(target,$(GHC_HSP),$(GHC_HSPSRC),hsp)
#endif /* HsParserNeededHere */
GHC_HSP = HsParserCmd
GHC_HSPSRC = $(GHC_HSCSRC)
# line 248 "only4-ghc.ljm"
#ifndef HsCompilerCmd
#define HsCompilerCmd $(GHC_HSCSRC)/hsc
#endif
#ifndef HsCompilerNeededHere
#define HsCompilerNeededHere(target) \
__SomeUtilNeededHere(target,$(GHC_HSC),$(GHC_HSCSRC),hsc)
#endif /* HsCompilerNeededHere */
GHC_HSC = HsCompilerCmd
GHC_HSCSRC = $(GHC_COMPILERSRC)
# line 263 "only4-ghc.ljm"
#ifndef SysManCmd
#define SysManCmd $(GHC_RUNTIMESRC)/gum/SysMan
#endif
#ifndef SysManNeededHere
#define SysManNeededHere(target) \
__SomeUtilNeededHere(target,$(GHC_SYSMAN),$(GHC_SYSMANSRC),gum/SysMan)
#endif /* SysManNeededHere */
GHC_SYSMAN = SysManCmd
GHC_SYSMANSRC = $(GHC_RUNTIMESRC)
# line 318 "only4-ghc.ljm"
/* NON-OPTIMISING C COMPILATION: ==================================
We can use GCC 2.n for the non-optimising (normal) .hc C
compilation [use it if we have it]
*/
#ifndef GhcUseGccForDebuggingAsm
#if HaveGcc == YES
#define GhcUseGccForDebuggingAsm YES
#else
#define GhcUseGccForDebuggingAsm NO
#endif
#endif
#ifndef GhcDebuggingHighLevelAsmCmd
#if GhcUseGccForDebuggingAsm == YES
#define GhcDebuggingHighLevelAsmCmd WhatGccIsCalled
#else
#define GhcDebuggingHighLevelAsmCmd $(CC)
#endif /* ! gcc */
#endif /* GhcDebuggingHighLevelAsmCmd */
GHC_DEBUG_HILEV_ASM = GhcDebuggingHighLevelAsmCmd
# line 342 "only4-ghc.ljm"
/* OPTIMISING C COMPILATION (regs, etc): ==========================
Must use GCC 2.n for this
compilation [OFF by default]
*/
/* We have GCC, which is necessary for optimising the Haskell
compiler's C output.
*/
#ifndef GhcUseGccForOptAsm
#if HaveGcc == YES
#define GhcUseGccForOptAsm YES
#else
#define GhcUseGccForOptAsm NO
#endif
#endif
#ifndef GhcOptHighLevelAsmCmd
#if GhcUseGccForOptAsm == YES
#define GhcOptHighLevelAsmCmd WhatGccIsCalled
GHC_GCC_IS_AVAILABLE = 1
#else
GHC_GCC_IS_AVAILABLE = 0
#endif /* ! gcc */
#endif /* GhcOptHighLevelAsmCmd */
GHC_OPT_HILEV_ASM = GhcOptHighLevelAsmCmd
# line 11 "suffixes-ghc.ljm"
#ifndef SuffixRules_WantStdOnes
#define SuffixRules_WantStdOnes NO
#endif
# line 11 "utils-ghc.ljm"
#if GhcWithHscOptimised == YES
#define __hsc_opt -O
#else
#define __hsc_opt /**/
#endif
#ifndef SetupHcOpts
#if HaskellCompilerType == HC_CHALMERS_HBC
#define SetupHcOpts __hsc_opt -fpbu
#else
#if HaskellCompilerType == HC_GLASGOW_GHC
#define SetupHcOpts __hsc_opt -hi-diffs -link-chk
#else
#if HaskellCompilerType == HC_ROJEMO_NHC
#define SetupHcOpts /*nothing*/
#else
#define SetupHcOpts /*nothing*/
#endif
#endif
#endif
#endif /* SetupHcOpts */
#ifndef ProjectCcOpts
#if HaveGcc == YES && UseGcc == YES
/* can cope w/ "-g -O" ...; but leave out -g to avoid bloated libs */
#define ProjectCcOpts -O /*-g*/
#else
#define ProjectCcOpts /*-g*/
#endif /* Gcc whatnot */
#endif /* ProjectCcOpts */
#ifndef ProjectJmakeDefines
#define ProjectJmakeDefines /*none*/
#endif
# line 48 "utils-ghc.ljm"
#ifndef MkDependHSSrc
#define MkDependHSSrc $(GHC_UTILSRC)/mkdependHS
#endif
#ifndef MkDependHSCmd
#if defined(UseInstalledUtils)
#define MkDependHSCmd mkdependHS
#else
#define MkDependHSCmd $(MKDEPENDHSSRC)/mkdependHS
#endif
#endif /* ! MkDependHSCmd */
#ifndef MkDependHSNeededHere
#if defined(UseInstalledUtils)
#define MkDependHSNeededHere(target) /**/
#else
#define MkDependHSNeededHere(target) \
__SomeUtilNeededHere(target,$(MKDEPENDHS),$(MKDEPENDHSSRC),mkdependHS)
#endif /* UseInstalledUtils */
#endif /* MkDependHSNeededHere */
#ifndef UseInstalledUtils
MKDEPENDHSSRC = MkDependHSSrc
#endif
#ifndef UnlitCmd
#define UnlitCmd $(GHC_UNLITSRC)/unlit
#endif
#ifndef UnlitNeededHere
#define UnlitNeededHere(target) \
__SomeUtilNeededHere(target,$(GHC_UNLIT),$(GHC_UNLITSRC),unlit)
#endif /* UnlitNeededHere */
GHC_UNLIT = UnlitCmd
GHC_UNLITSRC = $(GHC_UTILSRC)/unlit
# line 87 "utils-ghc.ljm"
#ifndef HsTagsSrc
#define HsTagsSrc $(GHC_UTILSRC)/hstags
#endif
#if defined(UseInstalledUtils)
#define HsTagsCmd hstags
#else
#define HsTagsCmd $(HSTAGSSRC)/hstags
#endif
#ifndef HsTagsNeededHere
#if defined(UseInstalledUtils)
#define HsTagsNeededHere(target) /**/
#else
#define HsTagsNeededHere(target) \
__SomeUtilNeededHere(target,$(HSTAGS),$(HSTAGSSRC),hstags)
#endif /* UseInstalledUtils */
#endif /* HsTagsNeededHere */
HSTAGS = HsTagsCmd
#ifndef UseInstalledUtils
HSTAGSSRC = HsTagsSrc
#endif
#ifndef AllProjectsHsTagsOpts
#define AllProjectsHsTagsOpts /*none*/
#endif
#ifndef PlatformHsTagsOpts
#define PlatformHsTagsOpts /*none*/
#endif
#ifndef ProjectHsTagsOpts
#define ProjectHsTagsOpts /*none*/
#endif
#ifndef SetupHsTagsOpts
#define SetupHsTagsOpts /*none*/
#endif
GenerateOptionsMakeVars(HSTAGS,OPTS,AllProjectsHsTagsOpts,PlatformHsTagsOpts,ProjectHsTagsOpts,SetupHsTagsOpts)
HSTAGSFLAGS = $(GLUED_HSTAGS_OPTS)
/* ugen: allegedly generally-useful util from LML distribution */
#ifndef UgenCmd
#if defined(UseInstalledUtils)
#define UgenCmd ugen
#else
#define UgenCmd $(UGENSRC)/ugen
#endif
#endif
#ifndef UgenNeededHere
#if defined(UseInstalledUtils)
#define UgenNeededHere(target) /**/
#else
#define UgenNeededHere(target) \
__SomeUtilNeededHere(target,$(UGEN),$(UGENSRC),ugen)
#endif /* ! UseInstalledUtils */
#endif /* UgenNeededHere */
UGEN = UgenCmd
#ifndef UseInstalledUtils
UGENSRC = $(GHC_UTILSRC)/ugen
#endif
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment