s/benchmarks/stx/bc.mak
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 03 Dec 2014 23:53:25 +0000
changeset 262 8d2849dd3227
parent 213 918f0c6191c2
child 308 a09175ff8e80
permissions -rw-r--r--
Added support for (user-defined) benchmark instruments. * Introduced `BenchmarkMeasurementInstrument`, an abstraction to allow pluggin in a different aspects to measure - execution time, number scavenges, number fo full GC's... * Introduced `BenchmarkMeasurement`, a value object that holds a result of measurement done by a single `BenchmarkMeasurementInstrument`. * Code refactored so now `BenchmarkOutcome` now keeps a set of `BenchmarkMeasure`s * Measurements from each instrument are in reports. JSON report keep 'times' array for backward compatibility. * Each platform may define it's set of intruments that is used by default and __ALWAYS__. They should be non-intrusive. * Added command line option `-i` / `--instrument` to specify user-defined instrument to use. *

# $Header$
#
# DO NOT EDIT
# automagically generated from the projectDefinition: jv_calipel_s_benchmarks_stx.
#
# Warning: once you modify this file, do not rerun
# stmkmp or projectDefinition-build again - otherwise, your changes are lost.
#
# Notice, that the name bc.mak is historical (from times, when only borland c was supported).
# This file contains make rules for the win32 platform using either borland-bcc or visual-c.
# It shares common definitions with the unix-make in Make.spec.
# The bc.mak supports the following targets:
#    bmake         - compile all st-files to a classLib (dll)
#    bmake clean   - clean all temp files
#    bmake clobber - clean all
#
# Historic Note:
#  this used to contain only rules to make with borland
#    (called via bmake, by "make.exe -f bc.mak")
#  this has changed; it is now also possible to build using microsoft visual c
#    (called via vcmake, by "make.exe -f bc.mak -DUSEVC")
#
TOP=..\..\..\..\..\stx
INCLUDE_TOP=$(TOP)\..



!INCLUDE $(TOP)\rules\stdHeader_bc

!INCLUDE Make.spec

LIBNAME=libjv_calipel_s_benchmarks_stx
MODULE_PATH=calipel\s\benchmarks\stx
RESFILES=stx.$(RES)



LOCALINCLUDES= -I$(INCLUDE_TOP)\jv\calipel\s -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libview
LOCALDEFINES=

STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES)  -varPrefix=$(LIBNAME)
LOCALLIBS=

OBJS= $(COMMON_OBJS) $(WIN32_OBJS)

ALL::  classLibRule

classLibRule: $(OUTDIR) $(OUTDIR)$(LIBNAME).dll

!INCLUDE $(TOP)\rules\stdRules_bc

# build all mandatory prerequisite packages (containing superclasses) for this package
prereq:
	pushd ..\..\..\..\..\stx\libbasic & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
	pushd ..\.. & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "







test: $(TOP)\goodies\builder\reports\NUL
	pushd $(TOP)\goodies\builder\reports & $(MAKE_BAT)
	$(TOP)\goodies\builder\reports\report-runner.bat -D . -r Builder::TestReport -p $(PACKAGE)
        
clean::
	del *.$(CSUFFIX)


# BEGINMAKEDEPEND --- do not remove this line; make depend needs it
$(OUTDIR)BenchmarkCollection.$(O) BenchmarkCollection.$(H): BenchmarkCollection.st $(INCLUDE_TOP)\jv\calipel\s\Benchmark.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkLinkedList.$(O) BenchmarkLinkedList.$(H): BenchmarkLinkedList.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkSTX1.$(O) BenchmarkSTX1.$(H): BenchmarkSTX1.st $(INCLUDE_TOP)\jv\calipel\s\Benchmark.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkSTX2.$(O) BenchmarkSTX2.$(H): BenchmarkSTX2.st $(INCLUDE_TOP)\jv\calipel\s\Benchmark.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkSTX3.$(O) BenchmarkSTX3.$(H): BenchmarkSTX3.st $(INCLUDE_TOP)\jv\calipel\s\Benchmark.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkSimpleHanoi.$(O) BenchmarkSimpleHanoi.$(H): BenchmarkSimpleHanoi.st $(INCLUDE_TOP)\jv\calipel\s\Benchmark.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkSlopstone.$(O) BenchmarkSlopstone.$(H): BenchmarkSlopstone.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkSmopstone.$(O) BenchmarkSmopstone.$(H): BenchmarkSmopstone.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkSpeedTester.$(O) BenchmarkSpeedTester.$(H): BenchmarkSpeedTester.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)jv_calipel_s_benchmarks_stx.$(O) jv_calipel_s_benchmarks_stx.$(H): jv_calipel_s_benchmarks_stx.st $(INCLUDE_TOP)\stx\libbasic\LibraryDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(STCHDR)
$(OUTDIR)BenchmarkDictionaryLike.$(O) BenchmarkDictionaryLike.$(H): BenchmarkDictionaryLike.st $(INCLUDE_TOP)\jv\calipel\s\Benchmark.$(H) $(INCLUDE_TOP)\jv\calipel\s\benchmarks\stx\BenchmarkCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)BenchmarkSortedCollectionLike.$(O) BenchmarkSortedCollectionLike.$(H): BenchmarkSortedCollectionLike.st $(INCLUDE_TOP)\jv\calipel\s\Benchmark.$(H) $(INCLUDE_TOP)\jv\calipel\s\benchmarks\stx\BenchmarkCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)

# ENDMAKEDEPEND --- do not remove this line

# **Must be at end**

# Enforce recompilation of package definition class if Mercurial working
# copy state changes. Together with --guessVersion it ensures that package
# definition class always contains correct binary revision string.
!IFDEF HGROOT
$(OUTDIR)jv_calipel_s_benchmarks_stx.$(O): $(HGROOT)\.hg\dirstate
!ENDIF