diff options
author | Patrick Williams <iawillia@us.ibm.com> | 2013-02-27 18:58:30 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-03-01 14:30:16 -0600 |
commit | b3d259d970c91fb8ac3b931e5409dd8cecca699f (patch) | |
tree | 156802817d5d014f4affd01eaa1a5332c0491054 /src/build/mkrules/beam.rules.mk | |
parent | c51452c00b0e2bf2510d63e6863e3cd9802ee711 (diff) | |
download | talos-hostboot-b3d259d970c91fb8ac3b931e5409dd8cecca699f.tar.gz talos-hostboot-b3d259d970c91fb8ac3b931e5409dd8cecca699f.zip |
Refactoring of the build system.
- Remove unused files for generating LIDs.
- Reduce the overall verbosity of the build.
- Separate 'config.mk' into a number of smaller, topic-centric
files and comment better.
- Generalize the 'passes' concept and added an IMAGES pass.
- Deprecate most "magic" make variables like EXTRAFOO.
- Overall performance improvements.
I've tried to reduce the impact of these changes on component-level
makefiles. There will be follow-up commit(s) to improve those and
decrease the verbosity of some component-owned commands.
Change-Id: I6d319f5338eb3946f56b281c3cdd5f341a016fcc
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/3368
Reviewed-by: Brian H. Horton <brianh@linux.ibm.com>
Tested-by: Jenkins Server
Reviewed-by: ADAM R. MUHLE <armuhle@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/build/mkrules/beam.rules.mk')
-rw-r--r-- | src/build/mkrules/beam.rules.mk | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/build/mkrules/beam.rules.mk b/src/build/mkrules/beam.rules.mk new file mode 100644 index 000000000..d77cd94ef --- /dev/null +++ b/src/build/mkrules/beam.rules.mk @@ -0,0 +1,56 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/build/mkrules/beam.rules.mk $ +# +# IBM CONFIDENTIAL +# +# COPYRIGHT International Business Machines Corp. 2013 +# +# p1 +# +# Object Code Only (OCO) source materials +# Licensed Internal Code Source Materials +# IBM HostBoot Licensed Internal Code +# +# The source code for this program is not published or otherwise +# divested of its trade secrets, irrespective of what has been +# deposited with the U.S. Copyright Office. +# +# Origin: 30 +# +# IBM_PROLOG_END_TAG + +# File: beam.rules.mk +# Description: +# Rules for running BEAM on C/C++/ASM files. + +$(BEAMDIR)/%.beam : %.C + $(C2) " BEAM $(notdir $<)" + $(C1)$(BEAMCMD) $(INCFLAGS) $(CXXFLAGS) $(BEAMFLAGS) $< \ + --beam::complaint_file=$@ --beam::parser_file=/dev/null + +$(BEAMDIR)/%.beam : %.cc + $(C2) " BEAM $(notdir $<)" + $(C1)$(BEAMCMD) $(INCFLAGS) $(CXXFLAGS) $(BEAMFLAGS) $< \ + --beam::complaint_file=$@ --beam::parser_file=/dev/null + +$(BEAMDIR)/%.beam : %.c + $(C2) " BEAM $(notdir $<)" + $(C1)$(BEAMCMD) $(INCFLAGS) $(CXXFLAGS) $(BEAMFLAGS) $< \ + --beam::complaint_file=$@ --beam::parser_file=/dev/null + +$(BEAMDIR)/%.beam : %.S + @echo Skipping ASM file: $< + + +BEAMOBJS = $(addprefix $(BEAMDIR)/, $(OBJS:.o=.beam)) + +beam: BEAM_PASS + +.PHONY: make_beamdir +make_beamdir: + @mkdir -p $(BEAMDIR) + +BEAM_PASS_PRE += make_beamdir +BEAM_PASS_BODY += $(BEAMOBJS) |