<commit_before>#-----------------------------------------------------------------------------
# $Id: Makefile,v 1.60 2002/01/31 11:18:06 sof Exp $
#
#  This is the Makefile for the runtime-system stuff.
#  This stuff is written in C (and cannot be written in Haskell).
#
#  .c  files are vanilla C,
#  .hc files are "Haskellized-C", compiled using the C compiler and
#      (possibly) the assembly-mangler.  The GHC driver script
#      knows how to compile this stuff.
#
#  Other sorta independent, compile-once subdirs are:
#	gmp		-- GNU multi-precision library (for Integer)

#-----------------------------------------------------------------------------
# Preamble

TOP=..

# Set UseGhcForCc: this causes the fptools build system to use a different
# set of suffix rules for compiling C code, using $(HC) rather than $(CC)
# and prepending "-optc" to $(CC_OPTS).  NB. must be done before including
# boilerplate.mk below.
ifneq "$(BootingFromHc)" "YES"
UseGhcForCc = YES
endif

include $(TOP)/mk/boilerplate.mk

HC=$(GHC_INPLACE)

PACKAGE = rts
WAYS=$(GhcLibWays)

# grab sources from these subdirectories
ALL_DIRS = hooks parallel

ifneq "$(DLLized)" "YES"
EXCLUDED_SRCS += RtsDllMain.c
else
EXCLUDED_SRCS += Main.c
endif

EXCLUDED_SRCS += parallel/SysMan.c

# The build system doesn't give us these
HC_SRCS = $(filter %.hc, $(SRCS))
HC_OBJS = $(patsubst %.hc,%.o, $(HC_SRCS))

# Override the default $(LIBOBJS) (the default provides for building Haskell libs)
LIBOBJS = $(C_OBJS) $(HC_OBJS)

SplitObjs=NO

#-----------------------------------------------------------------------------
# Flags for compiling RTS .c and .hc files

# gcc provides lots of useful warnings if you ask it.
# This is a pretty good list to start with - use a # to comment out
# any you don't like.
WARNING_OPTS += -Wall 
WARNING_OPTS += -W
WARNING_OPTS += -Wstrict-prototypes 
WARNING_OPTS += -Wmissing-prototypes 
WARNING_OPTS += -Wmissing-declarations
WARNING_OPTS += -Winline
WARNING_OPTS += -Waggregate-return
#WARNING_OPTS += -Wpointer-arith
WARNING_OPTS += -Wbad-function-cast
WARNING_OPTS += -Wcast-align
#WARNING_OPTS += -Wnested-externs
#WARNING_OPTS += -Wshadow
#WARNING_OPTS += -Wcast-qual
#WARNING_OPTS += -Wno-unused 
#WARNING_OPTS += -Wredundant-decls 
#WARNING_OPTS += -Wconversion
<commit_msg>[project @ 2002-02-04 12:09:44 by simonmar] oops, fix HC_OBJS for non-normal ways.<commit_after>#-----------------------------------------------------------------------------
# $Id: Makefile,v 1.61 2002/02/04 12:09:44 simonmar Exp $
#
#  This is the Makefile for the runtime-system stuff.
#  This stuff is written in C (and cannot be written in Haskell).
#
#  .c  files are vanilla C,
#  .hc files are "Haskellized-C", compiled using the C compiler and
#      (possibly) the assembly-mangler.  The GHC driver script
#      knows how to compile this stuff.
#
#  Other sorta independent, compile-once subdirs are:
#	gmp		-- GNU multi-precision library (for Integer)

#-----------------------------------------------------------------------------
# Preamble

TOP=..

# Set UseGhcForCc: this causes the fptools build system to use a different
# set of suffix rules for compiling C code, using $(HC) rather than $(CC)
# and prepending "-optc" to $(CC_OPTS).  NB. must be done before including
# boilerplate.mk below.
ifneq "$(BootingFromHc)" "YES"
UseGhcForCc = YES
endif

include $(TOP)/mk/boilerplate.mk

HC=$(GHC_INPLACE)

PACKAGE = rts
WAYS=$(GhcLibWays)

# grab sources from these subdirectories
ALL_DIRS = hooks parallel

ifneq "$(DLLized)" "YES"
EXCLUDED_SRCS += RtsDllMain.c
else
EXCLUDED_SRCS += Main.c
endif

EXCLUDED_SRCS += parallel/SysMan.c

# The build system doesn't give us these
HC_SRCS = $(filter %.hc, $(SRCS))
HC_OBJS = $(patsubst %.hc,%.$(way)_o, $(HC_SRCS))

# Override the default $(LIBOBJS) (the default provides for building Haskell libs)
LIBOBJS = $(C_OBJS) $(HC_OBJS)

SplitObjs=NO

#-----------------------------------------------------------------------------
# Flags for compiling RTS .c and .hc files

# gcc provides lots of useful warnings if you ask it.
# This is a pretty good list to start with - use a # to comment out
# any you don't like.
WARNING_OPTS += -Wall 
WARNING_OPTS += -W
WARNING_OPTS += -Wstrict-prototypes 
WARNING_OPTS += -Wmissing-prototypes 
WARNING_OPTS += -Wmissing-declarations
WARNING_OPTS += -Winline
WARNING_OPTS += -Waggregate-return
#WARNING_OPTS += -Wpointer-arith
WARNING_OPTS += -Wbad-function-cast
WARNING_OPTS += -Wcast-align
#WARNING_OPTS += -Wnested-externs
#WARNING_OPTS += -Wshadow
#WARNING_OPTS += -Wcast-qual
#WARNING_OPTS += -Wno-unused 
#WARNING_OPTS += -Wredundant-decls 
#WARNING_OPTS += -Wconversion

{'fraction_non_alphanumeric': 0.20360437674318815, 'fraction_numerical': 0.010298219266251877, 'mean_word_length': 2.6708661417322834, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6369329', 'n_tokens_mistral': 1603, 'n_tokens_neox': 1509, 'n_words': 486}