[project @ 1998-01-14 11:22:21 by sof]
[ghc-hetmet.git] / mk / opts.mk
1 #################################################################################
2 #
3 #                               opts.mk
4 #
5 #       This file defines Make variables for the
6 #       option flags for each utility program
7 #
8 #       $Id: opts.mk,v 1.4 1998/01/14 11:22:21 sof Exp $
9 #
10 #################################################################################
11
12 # Exports:      Define P_OPTS for the most important utility programs, P, namely
13 #
14 #               AR AS CPP CTAGS C FLEX HC HSTAGS LD LINT 
15 #               LIT2CHANGELOG LIT2HTML LIT2LATEX LIT2PGM LIT2TEXI
16 #               MKDEPENDC MKDEPENDHS MKDEPENDLIT MSUB
17 #               RUNTEST UGEN UNLIT YACC          
18
19
20 # For each such utility program P, this file defines
21 #
22 #       $(P)            The pathname to invoke the utility
23 #       P_OPTS          Options to pass to P
24 #
25 # P_OPTS is always defined like this:
26 #
27 # P_OPTS = SRC_P_OPTS WAY$(_way)_P_OPTS BUILD_P_OPTS EXTRA_P_OPTS
28 #
29 # where the variables on the right hand side are set by the user or
30 # some other Makefile.  They have the following intended uses:
31 #
32 #       SRC_P_OPTS              Source-tree options for P
33 #       WAY$(_way)_P_OPTS       Source-tree options for P specific to $(way)
34 #       BUILD_P_OPTS            Build-tree options for P
35 #       EXTRA_P_OPTS            Command-line options for P
36 #
37 # All these options should be set with
38 #       thing += extra-options
39 # in case someone higher up the include hierarchy has already added some
40
41
42 #################################################################################
43 #
44 #               Global option flags for utilities
45 #
46 #################################################################################
47
48 # These flags make flex 8-bit
49 SRC_FLEX_OPTS   += -8
50
51 #
52 # Make sure we install things with group 'grasp' at Glasgow
53 # At Glasgow, we would rather the installed binaries were stripped.
54 # (Delete if you feel otherwise.)
55 SRC_INSTALL_BIN_OPTS    += -s
56 ifeq ($(AT_GLASGOW),1)
57 SRC_INSTALL_OPTS        += -g grasp
58 endif
59
60 # lint gets all CPP's flags too
61 SRC_LINT_OPTS           += -axz -DLINT $(SRC_CPP_OPTS)
62 WAY$(_way)_LINT_OPTS    += WAY$(_way)_CPP_OPTS
63
64
65 # Default fptools options for texi2html:
66 #
67 #  - each node in separate file.
68 #  - handle texi menus and glossaries.
69 #
70
71 SRC_TEXI2HTML_OPTS +=-menu -verbose -glossary
72
73
74 #################################################################################
75 #
76 #               Absolutely standard glue
77 #
78 #################################################################################
79
80 # All the standard gluing together, as in the comment right at the front
81
82
83 # For the Haskell compiler and runtests we do something a bit special:
84 # we also include target-specific flags
85 HC_OPTS            = $(SRC_HC_OPTS) $(WAY$(_way)_HC_OPTS) $($*_HC_OPTS) $(EXTRA_HC_OPTS)
86
87 RUNTEST_OPTS       = $(SRC_RUNTEST_OPTS) $(WAY$(_way)_RUNTEST_OPTS) \
88                      $($*_RUNTEST_OPTS) $(EXTRA_RUNTEST_OPTS)
89
90 AR_OPTS            = $(SRC_AR_OPTS) $(WAY$(_way)_AR_OPTS) $(EXTRA_AR_OPTS)
91 AS_OPTS            = $(SRC_AS_OPTS) $(WAY$(_way)_AS_OPTS) $(EXTRA_AS_OPTS)
92 CPP_OPTS           = $(SRC_CPP_OPTS) $(WAY$(_way)_CPP_OPTS) $(EXTRA_CPP_OPTS)
93 CTAGS_OPTS         = $(SRC_CTAGS_OPTS) $(WAY$(_way)_CTAGS_OPTS) $(EXTRA_CTAGS_OPTS)
94 CC_OPTS            = $(SRC_CC_OPTS) $(WAY$(_way)_CC_OPTS) $($*_CC_OPTS) $(EXTRA_CC_OPTS)
95 FLEX_OPTS          = $(SRC_FLEX_OPTS) $(WAY$(_way)_FLEX_OPTS) $(EXTRA_FLEX_OPTS)
96 HAPPY_OPTS         = $(SRC_HAPPY_OPTS) $(WAY$(_way)_HAPPY_OPTS) $($*_HAPPY_OPTS) $(EXTRA_HAPPY_OPTS)
97 GREENCARD_OPTS     = $(SRC_GREENCARD_OPTS) $(WAY$(_way)_GREENCARD_OPTS) $($*_GREENCARD_OPTS) $(EXTRA_GREENCARD_OPTS)
98 HSTAGS_OPTS        = $(SRC_HSTAGS_OPTS) $(WAY$(_way)_HSTAGS_OPTS) $(EXTRA_HSTAGS_OPTS)
99 INSTALL_OPTS       = $(SRC_INSTALL_OPTS) $(WAY$(_way)_INSTALL_OPTS) $(EXTRA_INSTALL_OPTS)
100 INSTALL_BIN_OPTS   = $(INSTALL_OPTS) $(SRC_INSTALL_BIN_OPTS)
101 LD_OPTS            = $(SRC_LD_OPTS) $(WAY$(_way)_LD_OPTS) $(EXTRA_LD_OPTS)
102 LINT_OPTS          = $(SRC_LINT_OPTS) $(WAY$(_way)_LINT_OPTS) $(EXTRA_LINT_OPTS)
103 LIT2CHANGELOG_OPTS = $(SRC_LIT2CHANGELOG_OPTS) $(WAY$(_way)_LIT2CHANGELOG_OPTS) \
104                      $(EXTRA_LIT2CHANGELOG_OPTS)
105 LIT2HTML_OPTS      = $(SRC_LIT2HTML_OPTS) $(WAY$(_way)_LIT2HTML_OPTS) $(EXTRA_LIT2HTML_OPTS)
106 LIT2LATEX_OPTS     = $(SRC_LIT2LATEX_OPTS) $(WAY$(_way)_LIT2LATEX_OPTS) $(EXTRA_LIT2LATEX_OPTS)
107 LIT2PGM_OPTS       = $(SRC_LIT2PGM_OPTS) $(WAY$(_way)_LIT2PGM_OPTS) $(EXTRA_LIT2PGM_OPTS)
108 LIT2TEXI_OPTS      = $(SRC_LIT2TEXI_OPTS) $(WAY$(_way)_LIT2TEXI_OPTS) $(EXTRA_LIT2TEXI_OPTS)
109 TEXI2HTML_OPTS     = $(SRC_TEXI2HTML_OPTS) $(WAY$(_way)_TEXI2HTML_OPTS) $(EXTRA_TEXI2HTML_OPTS)
110 MKDEPENDC_OPTS     = $(SRC_MKDEPENDC_OPTS) $(WAY$(_way)_MKDEPENDC_OPTS) $(EXTRA_MKDEPENDC_OPTS)
111 MKDEPENDHS_OPTS    = $(SRC_MKDEPENDHS_OPTS) $(WAY$(_way)_MKDEPENDHS_OPTS) \
112                      $(EXTRA_MKDEPENDHS_OPTS)
113 MKDEPENDLIT_OPTS   = $(SRC_MKDEPENDLIT_OPTS) $(WAY$(_way)_MKDEPENDLIT_OPTS) \
114                      $(EXTRA_MKDEPENDLIT_OPTS)
115 UGEN_OPTS          = $(SRC_UGEN_OPTS) $(WAY$(_way)_UGEN_OPTS) $(EXTRA_UGEN_OPTS)
116 UNLIT_OPTS         = $(SRC_UNLIT_OPTS) $(WAY$(_way)_UNLIT_OPTS) $(EXTRA_UNLIT_OPTS)
117 YACC_OPTS          = $(SRC_YACC_OPTS) $(WAY$(_way)_YACC_OPTS) $(EXTRA_YACC_OPTS)